diff --git a/orte/mca/state/novm/state_novm_component.c b/orte/mca/state/novm/state_novm_component.c index 33b887c6ff..36293dc5df 100644 --- a/orte/mca/state/novm/state_novm_component.c +++ b/orte/mca/state/novm/state_novm_component.c @@ -57,15 +57,17 @@ orte_state_base_component_t mca_state_novm_component = }, }; -static int my_priority; +static bool select_me = false; static int state_novm_open(void) { + int tmp; mca_base_component_t *c=&mca_state_novm_component.base_version; - mca_base_param_reg_int(c, "priority", - "Selection priority", - false, false, 50, &my_priority); + mca_base_param_reg_int(c, "select", + "Use this component", + false, false, (int)false, &tmp); + select_me = OPAL_INT_TO_BOOL(tmp); return ORTE_SUCCESS; } @@ -76,9 +78,9 @@ static int state_novm_close(void) static int state_novm_component_query(mca_base_module_t **module, int *priority) { - if (ORTE_PROC_IS_HNP) { - /* set our priority mid-range so we'll be selected if user desires */ - *priority = my_priority; + if (ORTE_PROC_IS_HNP && select_me) { + /* set our priority high so we'll be selected if user desires */ + *priority = 1000; *module = (mca_base_module_t *)&orte_state_novm_module; return ORTE_SUCCESS; } diff --git a/orte/tools/orterun/orterun.c b/orte/tools/orterun/orterun.c index be9deb790c..d2fd477b9f 100644 --- a/orte/tools/orterun/orterun.c +++ b/orte/tools/orterun/orterun.c @@ -519,6 +519,10 @@ static opal_cmd_line_init_t cmd_line_init[] = { &orterun_globals.disable_recovery, OPAL_CMD_LINE_TYPE_BOOL, "Disable recovery (resets all recovery options to off)" }, + { "state", "novm", "select", '\0', "novm", "novm", 0, + NULL, OPAL_CMD_LINE_TYPE_BOOL, + "Execute without creating an allocation-spanning virtual machine (only start daemons on nodes hosting application procs)" }, + /* End of list */ { NULL, NULL, NULL, '\0', NULL, NULL, 0, NULL, OPAL_CMD_LINE_TYPE_NULL, NULL }