Skip to content

Commit

Permalink
accelerator/rocm: adjust rocm mca parameter names
Browse files Browse the repository at this point in the history
make the mca parameters of the accelerator/rocm component being
recognized as parameters of the component, instead of generic mpi
parameters. The original mca parameter names stem from the times when
the rocm component was in mca/common/rocm/ instead of a component.

We are however keeping the old names as synonyms, e.g.

"accelerator_rocm_memcpy_async" (..., synonyms: mpi_accelerator_rocm_memcpy_async)

Signed-off-by: Edgar Gabriel <Edgar.Gabriel@amd.com>
  • Loading branch information
edgargabriel committed Jul 29, 2024
1 parent b4390af commit 320fbb0
Showing 1 changed file with 32 additions and 22 deletions.
54 changes: 32 additions & 22 deletions opal/mca/accelerator/rocm/accelerator_rocm_component.c
Original file line number Diff line number Diff line change
Expand Up @@ -130,38 +130,48 @@ static int accelerator_rocm_close(void)

static int accelerator_rocm_component_register(void)
{
int var_id;

/* Set verbosity in the rocm related code. */
opal_accelerator_rocm_verbose = 0;
(void) mca_base_var_register("ompi", "mpi", "accelerator_rocm", "verbose",
"Set level of rocm verbosity", MCA_BASE_VAR_TYPE_INT, NULL,
0, 0, OPAL_INFO_LVL_9, MCA_BASE_VAR_SCOPE_READONLY,
&opal_accelerator_rocm_verbose);
var_id = mca_base_component_var_register (&mca_accelerator_rocm_component.super.base_version,
"verbose", "Set level of verbosity of rocm component",
MCA_BASE_VAR_TYPE_INT, NULL, 0,
0, OPAL_INFO_LVL_9, MCA_BASE_VAR_SCOPE_READONLY,
&opal_accelerator_rocm_verbose);
(void) mca_base_var_register_synonym (var_id, "ompi", "mpi", "accelerator_rocm", "verbose", 0);

/* Switching point between using memcpy and hipMemcpy* functions. */
opal_accelerator_rocm_memcpyD2H_limit = 1024;
(void) mca_base_var_register("ompi", "mpi", "accelerator_rocm", "memcpyD2H_limit",
"Max. msg. length to use memcpy instead of hip functions "
"for device-to-host copy operations",
MCA_BASE_VAR_TYPE_INT, NULL, 0, 0,
OPAL_INFO_LVL_9, MCA_BASE_VAR_SCOPE_READONLY,
&opal_accelerator_rocm_memcpyD2H_limit);

var_id = mca_base_component_var_register (&mca_accelerator_rocm_component.super.base_version,
"memcpyD2H_limit",
"Max. msg. length to use memcpy instead of hip functions "
"for device-to-host copy operations",
MCA_BASE_VAR_TYPE_INT, NULL, 0, 0,
OPAL_INFO_LVL_9, MCA_BASE_VAR_SCOPE_READONLY,
&opal_accelerator_rocm_memcpyD2H_limit);
(void) mca_base_var_register_synonym (var_id, "ompi", "mpi", "accelerator_rocm", "memcpyD2H_limit", 0);

/* Switching point between using memcpy and hipMemcpy* functions. */
opal_accelerator_rocm_memcpyH2D_limit = 1048576;
(void) mca_base_var_register("ompi", "mpi", "accelerator_rocm", "memcpyH2D_limit",
"Max. msg. length to use memcpy instead of hip functions "
"for host-to-device copy operations",
MCA_BASE_VAR_TYPE_INT, NULL, 0, 0,
OPAL_INFO_LVL_9, MCA_BASE_VAR_SCOPE_READONLY,
&opal_accelerator_rocm_memcpyH2D_limit);
var_id = mca_base_component_var_register (&mca_accelerator_rocm_component.super.base_version,
"memcpyH2D_limit",
"Max. msg. length to use memcpy instead of hip functions "
"for host-to-device copy operations",
MCA_BASE_VAR_TYPE_INT, NULL, 0, 0,
OPAL_INFO_LVL_9, MCA_BASE_VAR_SCOPE_READONLY,
&opal_accelerator_rocm_memcpyH2D_limit);
(void) mca_base_var_register_synonym (var_id, "ompi", "mpi", "accelerator_rocm", "memcpyH2D_limit", 0);

/* Use this flag to test async vs sync copies */
opal_accelerator_rocm_memcpy_async = 0;
(void) mca_base_var_register("ompi", "mpi", "accelerator_rocm", "memcpy_async",
"Set to 1 to force using hipMemcpyAsync instead of hipMemcpy",
MCA_BASE_VAR_TYPE_INT, NULL, 0, 0, OPAL_INFO_LVL_9,
MCA_BASE_VAR_SCOPE_READONLY, &opal_accelerator_rocm_memcpy_async);

var_id = mca_base_component_var_register (&mca_accelerator_rocm_component.super.base_version,
"memcpy_async",
"Set to 1 to force using hipMemcpyAsync instead of hipMemcpy",
MCA_BASE_VAR_TYPE_INT, NULL, 0, 0, OPAL_INFO_LVL_9,
MCA_BASE_VAR_SCOPE_READONLY,
&opal_accelerator_rocm_memcpy_async);
(void) mca_base_var_register_synonym (var_id, "ompi", "mpi", "accelerator_rocm", "memcpy_async", 0);
return OPAL_SUCCESS;
}

Expand Down

0 comments on commit 320fbb0

Please sign in to comment.