This fixes the OpenIB BTL receive queue selection logic in the trunk. Custom patch for 1.8.2 is provided in Refs trac:4816
This commit was SVN r32346. The following Trac tickets were found above: Ticket 4816 --> https://svn.open-mpi.org/trac/ompi/ticket/4816
Этот коммит содержится в:
родитель
b8c3b01643
Коммит
5be6ff07d5
@ -265,6 +265,17 @@ static int btl_openib_component_close(void)
|
|||||||
opal_btl_openib_fd_finalize();
|
opal_btl_openib_fd_finalize();
|
||||||
opal_btl_openib_ini_finalize();
|
opal_btl_openib_ini_finalize();
|
||||||
|
|
||||||
|
if (NULL != mca_btl_openib_component.receive_queues
|
||||||
|
&& BTL_OPENIB_RQ_SOURCE_DEFAULT ==
|
||||||
|
mca_btl_openib_component.receive_queues_source) {
|
||||||
|
/*
|
||||||
|
* In that case, the string has not been duplicated during variable
|
||||||
|
* registration. So it won't be freed by the mca_base_var system.
|
||||||
|
* Free it here.
|
||||||
|
*/
|
||||||
|
free(mca_btl_openib_component.receive_queues);
|
||||||
|
}
|
||||||
|
|
||||||
if (NULL != mca_btl_openib_component.default_recv_qps) {
|
if (NULL != mca_btl_openib_component.default_recv_qps) {
|
||||||
free(mca_btl_openib_component.default_recv_qps);
|
free(mca_btl_openib_component.default_recv_qps);
|
||||||
}
|
}
|
||||||
|
@ -661,12 +661,14 @@ int btl_openib_register_mca_params(void)
|
|||||||
mca_btl_openib_component.default_recv_qps = default_qps;
|
mca_btl_openib_component.default_recv_qps = default_qps;
|
||||||
CHECK(reg_string("receive_queues", NULL,
|
CHECK(reg_string("receive_queues", NULL,
|
||||||
"Colon-delimited, comma-delimited list of receive queues: P,4096,8,6,4:P,32768,8,6,4",
|
"Colon-delimited, comma-delimited list of receive queues: P,4096,8,6,4:P,32768,8,6,4",
|
||||||
default_qps, &mca_btl_openib_component.receive_queues,
|
NULL, &mca_btl_openib_component.receive_queues,
|
||||||
0));
|
0));
|
||||||
mca_btl_openib_component.receive_queues_source =
|
if (NULL == mca_btl_openib_component.receive_queues) {
|
||||||
(0 == strcmp(default_qps,
|
mca_btl_openib_component.receive_queues = strdup(default_qps);
|
||||||
mca_btl_openib_component.receive_queues)) ?
|
mca_btl_openib_component.receive_queues_source = BTL_OPENIB_RQ_SOURCE_DEFAULT;
|
||||||
BTL_OPENIB_RQ_SOURCE_DEFAULT : BTL_OPENIB_RQ_SOURCE_MCA;
|
} else {
|
||||||
|
mca_btl_openib_component.receive_queues_source = BTL_OPENIB_RQ_SOURCE_MCA;
|
||||||
|
}
|
||||||
|
|
||||||
CHECK(reg_string("if_include", NULL,
|
CHECK(reg_string("if_include", NULL,
|
||||||
"Comma-delimited list of devices/ports to be used (e.g. \"mthca0,mthca1:2\"; empty value means to use all ports found). Mutually exclusive with btl_openib_if_exclude.",
|
"Comma-delimited list of devices/ports to be used (e.g. \"mthca0,mthca1:2\"; empty value means to use all ports found). Mutually exclusive with btl_openib_if_exclude.",
|
||||||
|
Загрузка…
x
Ссылка в новой задаче
Block a user