
This commit adds a new btl for one-sided and two-sided. This btl uses the uct layer in OpenUCX. This btl makes use of multiple uct contexts and per-thread device pinning to provide good performance when using threads and osc/rdma. This btl has been tested extensively with osc/rdma and passes all MTT tests on aries and IB hardware. For now this new component disables itself but can be enabled by setting the btl_ucx_transports MCA variable with a comma-delimited list of supported memory domains/transport layers. For example: --mca btl_uct_memory_domains ib/mlx5_0. The specific transports used can be selected using --mca btl_uct_transports. The default is to use any available transport. Signed-off-by: Nathan Hjelm <hjelmn@lanl.gov>
48 строки
1.7 KiB
Bash
48 строки
1.7 KiB
Bash
# -*- shell-script -*-
|
|
#
|
|
# Copyright (c) 2004-2005 The Trustees of Indiana University and Indiana
|
|
# University Research and Technology
|
|
# Corporation. All rights reserved.
|
|
# Copyright (c) 2004-2005 The University of Tennessee and The University
|
|
# of Tennessee Research Foundation. All rights
|
|
# reserved.
|
|
# Copyright (c) 2004-2005 High Performance Computing Center Stuttgart,
|
|
# University of Stuttgart. All rights reserved.
|
|
# Copyright (c) 2004-2006 The Regents of the University of California.
|
|
# All rights reserved.
|
|
# Copyright (c) 2006 QLogic Corp. All rights reserved.
|
|
# Copyright (c) 2009 Cisco Systems, Inc. All rights reserved.
|
|
# Copyright (c) 2011-2018 Los Alamos National Security, LLC.
|
|
# All rights reserved.
|
|
# $COPYRIGHT$
|
|
#
|
|
# Additional copyrights may follow
|
|
#
|
|
# $HEADER$
|
|
#
|
|
|
|
# OPAL_CHECK_UCX(prefix, [action-if-found], [action-if-not-found])
|
|
# --------------------------------------------------------
|
|
# check if UCX support can be found. sets prefix_{CPPFLAGS,
|
|
# LDFLAGS, LIBS} as needed and runs action-if-found if there is
|
|
# support, otherwise executes action-if-not-found
|
|
|
|
AC_DEFUN([MCA_opal_btl_uct_CONFIG],[
|
|
AC_CONFIG_FILES([opal/mca/btl/uct/Makefile])
|
|
|
|
OMPI_CHECK_UCX([btl_uct],
|
|
[btl_uct_happy="yes"],
|
|
[btl_uct_happy="no"])
|
|
|
|
AS_IF([test "$btl_uct_happy" = "yes"],
|
|
[$1
|
|
btl_uct_LIBS = "$btl_uct_LIBS -luct"
|
|
],
|
|
[$2])
|
|
|
|
# substitute in the things needed to build ucx
|
|
AC_SUBST([btl_uct_CPPFLAGS])
|
|
AC_SUBST([btl_uct_LDFLAGS])
|
|
AC_SUBST([btl_uct_LIBS])
|
|
])dnl
|