Skip to content

Commit bbef89d

Browse files
committed
mtl/ofi: add some more mca parameters
allow for toggling of both control/data progress models. allow for using FI_AV_TABLE or FI_AV_MAP for av type. Signed-off-by: Howard Pritchard <[email protected]>
1 parent 0d85d68 commit bbef89d

File tree

1 file changed

+49
-3
lines changed

1 file changed

+49
-3
lines changed

ompi/mca/mtl/ofi/mtl_ofi_component.c

Lines changed: 49 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
* Copyright (c) 2013-2016 Intel, Inc. All rights reserved
44
*
55
* Copyright (c) 2014-2015 Cisco Systems, Inc. All rights reserved.
6-
* Copyright (c) 2015 Los Alamos National Security, LLC. All rights
6+
* Copyright (c) 2015-2016 Los Alamos National Security, LLC. All rights
77
* reserved.
88
* $COPYRIGHT$
99
*
@@ -27,6 +27,9 @@ ompi_mtl_ofi_component_init(bool enable_progress_threads,
2727
static int param_priority;
2828
static char *prov_include;
2929
static char *prov_exclude;
30+
static char *control_progress;
31+
static char *data_progress;
32+
static char *av_type;
3033

3134
mca_mtl_ofi_component_t mca_mtl_ofi_component = {
3235
{
@@ -82,6 +85,33 @@ ompi_mtl_ofi_component_register(void)
8285
MCA_BASE_VAR_SCOPE_READONLY,
8386
&prov_exclude);
8487

88+
control_progress = "manual";
89+
mca_base_component_var_register(&mca_mtl_ofi_component.super.mtl_version,
90+
"control_progress",
91+
"Specify control progress model (default: manual). Set to auto for auto progress.",
92+
MCA_BASE_VAR_TYPE_STRING, NULL, 0, 0,
93+
OPAL_INFO_LVL_3,
94+
MCA_BASE_VAR_SCOPE_READONLY,
95+
&control_progress);
96+
97+
data_progress = "auto";
98+
mca_base_component_var_register(&mca_mtl_ofi_component.super.mtl_version,
99+
"data_progress",
100+
"Specify data progress model (default: auto). Set to manual for manual progress.",
101+
MCA_BASE_VAR_TYPE_STRING, NULL, 0, 0,
102+
OPAL_INFO_LVL_3,
103+
MCA_BASE_VAR_SCOPE_READONLY,
104+
&data_progress);
105+
106+
av_type = "map";
107+
mca_base_component_var_register(&mca_mtl_ofi_component.super.mtl_version,
108+
"av_type",
109+
"Specify AV type to use (default: map). Set to table for FI_AV_TABLE AV type.",
110+
MCA_BASE_VAR_TYPE_STRING, NULL, 0, 0,
111+
OPAL_INFO_LVL_3,
112+
MCA_BASE_VAR_SCOPE_READONLY,
113+
&av_type);
114+
85115
return OMPI_SUCCESS;
86116
}
87117

@@ -239,9 +269,25 @@ ompi_mtl_ofi_component_init(bool enable_progress_threads,
239269
hints->rx_attr->msg_order = FI_ORDER_SAS;
240270

241271
hints->domain_attr->threading = FI_THREAD_UNSPEC;
242-
hints->domain_attr->control_progress = FI_PROGRESS_MANUAL;
272+
273+
if (0 == strcmp(control_progress,"auto")) {
274+
hints->domain_attr->control_progress = FI_PROGRESS_AUTO;
275+
} else {
276+
hints->domain_attr->control_progress = FI_PROGRESS_MANUAL;
277+
}
278+
279+
if (0 == strcmp(data_progress,"manual")) {
280+
hints->domain_attr->data_progress = FI_PROGRESS_MANUAL;
281+
} else {
282+
hints->domain_attr->data_progress = FI_PROGRESS_AUTO;
283+
}
284+
243285
hints->domain_attr->resource_mgmt = FI_RM_ENABLED;
244-
hints->domain_attr->av_type = FI_AV_MAP;
286+
if (0 == strcmp(av_type, "table")) {
287+
hints->domain_attr->av_type = FI_AV_TABLE;
288+
} else {
289+
hints->domain_attr->av_type = FI_AV_MAP;
290+
}
245291

246292
/**
247293
* FI_VERSION provides binary backward and forward compatibility support

0 commit comments

Comments
 (0)