
This commit add support for scalable endpoint to enhance multithreaded application performance. The BTL will detect the support from ofi provider and will fallback to normal usage of scalable endpoint is not supported. NEW MCA parameters: - mca_btl_ofi_disable_sep: force the btl to not use scalable endpoint. - mca_btl_ofi_num_contexts_per_module: number of communication context to create (should be the same as number of thread). Signed-off-by: Thananon Patinyasakdikul <thananon.patinyasakdikul@intel.com>
40 строки
1.4 KiB
C
40 строки
1.4 KiB
C
/* -*- Mode: C; c-basic-offset:4 ; indent-tabs-mode:nil -*- */
|
|
/*
|
|
* Copyright (c) 2014-2018 Los Alamos National Security, LLC. All rights
|
|
* reserved.
|
|
* Copyright (c) 2018 Intel, Inc, All rights reserved
|
|
*
|
|
* $COPYRIGHT$
|
|
*
|
|
* Additional copyrights may follow
|
|
*
|
|
* $HEADER$
|
|
*/
|
|
|
|
#ifndef BTL_OFI_RDMA_H
|
|
#define BTL_OFI_RDMA_H
|
|
|
|
#include "opal/threads/thread_usage.h"
|
|
|
|
#include "btl_ofi.h"
|
|
#include "btl_ofi_endpoint.h"
|
|
|
|
mca_btl_ofi_completion_t *mca_btl_ofi_completion_alloc (
|
|
mca_btl_base_module_t *btl,
|
|
mca_btl_base_endpoint_t *endpoint,
|
|
mca_btl_ofi_context_t *ofi_context,
|
|
void *local_address,
|
|
mca_btl_base_registration_handle_t *local_handle,
|
|
mca_btl_base_rdma_completion_fn_t cbfunc,
|
|
void *cbcontext, void *cbdata,
|
|
int type);
|
|
|
|
#define MCA_BTL_OFI_NUM_RDMA_INC(module) \
|
|
OPAL_THREAD_ADD_FETCH64(&(module)->outstanding_rdma, 1);
|
|
|
|
#define MCA_BTL_OFI_NUM_RDMA_DEC(module) \
|
|
OPAL_THREAD_ADD_FETCH64(&(module)->outstanding_rdma, -1);
|
|
|
|
#endif /* !defined(BTL_OFI_RDMA_H) */
|
|
|