static int pmix_bfrop_register(pmix_mca_base_register_flag_t flags) { pmix_bfrops_globals.initial_size = PMIX_BFROP_DEFAULT_INITIAL_SIZE; pmix_mca_base_var_register("pmix", "bfrops", "base", "initial_size", "Initial size of a buffer", PMIX_MCA_BASE_VAR_TYPE_SIZE_T, NULL, 0, 0, PMIX_INFO_LVL_2, PMIX_MCA_BASE_VAR_SCOPE_READONLY, &pmix_bfrops_globals.initial_size); pmix_bfrops_globals.threshold_size = PMIX_BFROP_DEFAULT_THRESHOLD_SIZE; pmix_mca_base_var_register("pmix", "bfrops", "base", "threshold_size", "Size at which we switch from extending a buffer by doubling to extending by a smaller value", PMIX_MCA_BASE_VAR_TYPE_SIZE_T, NULL, 0, 0, PMIX_INFO_LVL_2, PMIX_MCA_BASE_VAR_SCOPE_READONLY, &pmix_bfrops_globals.threshold_size); #if PMIX_ENABLE_DEBUG pmix_bfrops_globals.default_type = PMIX_BFROP_BUFFER_FULLY_DESC; #else pmix_bfrops_globals.default_type = PMIX_BFROP_BUFFER_NON_DESC; #endif pmix_mca_base_var_register("pmix", "bfrops", "base", "default_type", "Default type for buffers", PMIX_MCA_BASE_VAR_TYPE_INT, NULL, 0, 0, PMIX_INFO_LVL_2, PMIX_MCA_BASE_VAR_SCOPE_READONLY, &pmix_bfrops_globals.default_type); return PMIX_SUCCESS; }
static int pmix_ptl_register(pmix_mca_base_register_flag_t flags) { pmix_mca_base_var_register("pmix", "ptl", "base", "max_msg_size", "Max size (in Mbytes) of a client/server msg", PMIX_MCA_BASE_VAR_TYPE_SIZE_T, NULL, 0, 0, PMIX_INFO_LVL_2, PMIX_MCA_BASE_VAR_SCOPE_READONLY, &max_msg_size); pmix_ptl_globals.max_msg_size = max_msg_size * 1024 * 1024; return PMIX_SUCCESS; }
pmix_status_t pmix_register_params(void) { int ret; if (pmix_register_done) { return PMIX_SUCCESS; } pmix_register_done = true; #if PMIX_ENABLE_TIMING pmix_timing_output = NULL; (void) pmix_mca_base_var_register ("pmix", "pmix", NULL, "timing_output", "The name of output file for timing information. If this parameter is not set then output will be directed into PMIX debug channel.", PMIX_MCA_BASE_VAR_TYPE_STRING, NULL, 0, 0, PMIX_INFO_LVL_9, PMIX_MCA_BASE_VAR_SCOPE_ALL, &pmix_timing_output); pmix_timing_overhead = true; (void) pmix_mca_base_var_register ("pmix", "pmix", NULL, "timing_overhead", "Timing framework introduce additional overhead (malloc's mostly)." " The time spend in such costly routines is measured and may be accounted" " (subtracted from timestamps). 'true' means consider overhead, 'false' - ignore (default: true).", PMIX_MCA_BASE_VAR_TYPE_BOOL, NULL, 0, 0, PMIX_INFO_LVL_9, PMIX_MCA_BASE_VAR_SCOPE_ALL, &pmix_timing_overhead); #endif /* RFC1918 defines - 10.0.0./8 - 172.16.0.0/12 - 192.168.0.0/16 RFC3330 also mentions - 169.254.0.0/16 for DHCP onlink iff there's no DHCP server */ pmix_net_private_ipv4 = "10.0.0.0/8;172.16.0.0/12;192.168.0.0/16;169.254.0.0/16"; ret = pmix_mca_base_var_register ("pmix", "pmix", "net", "private_ipv4", "Semicolon-delimited list of CIDR notation entries specifying what networks are considered \"private\" (default value based on RFC1918 and RFC3330)", PMIX_MCA_BASE_VAR_TYPE_STRING, NULL, 0, PMIX_MCA_BASE_VAR_FLAG_SETTABLE, PMIX_INFO_LVL_3, PMIX_MCA_BASE_VAR_SCOPE_ALL_EQ, &pmix_net_private_ipv4); if (0 > ret) { return ret; } (void) pmix_mca_base_var_register ("pmix", "pmix", NULL, "event_caching_window", "Time (in seconds) to aggregate events before reporting them - this " "suppresses event cascades when processes abnormally terminate", PMIX_MCA_BASE_VAR_TYPE_INT, NULL, 0, 0, PMIX_INFO_LVL_1, PMIX_MCA_BASE_VAR_SCOPE_ALL, &pmix_event_caching_window); (void) pmix_mca_base_var_register ("pmix", "pmix", NULL, "suppress_missing_data_warning", "Suppress warning that PMIx is missing job-level data that " "is supposed to be provided by the host RM.", PMIX_MCA_BASE_VAR_TYPE_BOOL, NULL, 0, 0, PMIX_INFO_LVL_1, PMIX_MCA_BASE_VAR_SCOPE_ALL, &pmix_suppress_missing_data_warning); /**** CLIENT: VERBOSE OUTPUT PARAMS ****/ (void) pmix_mca_base_var_register ("pmix", "pmix", "client", "get_verbose", "Verbosity for client get operations", PMIX_MCA_BASE_VAR_TYPE_INT, NULL, 0, 0, PMIX_INFO_LVL_1, PMIX_MCA_BASE_VAR_SCOPE_ALL, &pmix_client_globals.get_verbose); (void) pmix_mca_base_var_register ("pmix", "pmix", "client", "connect_verbose", "Verbosity for client connect operations", PMIX_MCA_BASE_VAR_TYPE_INT, NULL, 0, 0, PMIX_INFO_LVL_1, PMIX_MCA_BASE_VAR_SCOPE_ALL, &pmix_client_globals.connect_verbose); (void) pmix_mca_base_var_register ("pmix", "pmix", "client", "fence_verbose", "Verbosity for client fence operations", PMIX_MCA_BASE_VAR_TYPE_INT, NULL, 0, 0, PMIX_INFO_LVL_1, PMIX_MCA_BASE_VAR_SCOPE_ALL, &pmix_client_globals.fence_verbose); (void) pmix_mca_base_var_register ("pmix", "pmix", "client", "pub_verbose", "Verbosity for client publish, lookup, and unpublish operations", PMIX_MCA_BASE_VAR_TYPE_INT, NULL, 0, 0, PMIX_INFO_LVL_1, PMIX_MCA_BASE_VAR_SCOPE_ALL, &pmix_client_globals.pub_verbose); (void) pmix_mca_base_var_register ("pmix", "pmix", "client", "spawn_verbose", "Verbosity for client spawn operations", PMIX_MCA_BASE_VAR_TYPE_INT, NULL, 0, 0, PMIX_INFO_LVL_1, PMIX_MCA_BASE_VAR_SCOPE_ALL, &pmix_client_globals.spawn_verbose); (void) pmix_mca_base_var_register ("pmix", "pmix", "client", "event_verbose", "Verbosity for client event notifications", PMIX_MCA_BASE_VAR_TYPE_INT, NULL, 0, 0, PMIX_INFO_LVL_1, PMIX_MCA_BASE_VAR_SCOPE_ALL, &pmix_client_globals.event_verbose); (void) pmix_mca_base_var_register ("pmix", "pmix", "client", "iof_verbose", "Verbosity for client iof operations", PMIX_MCA_BASE_VAR_TYPE_INT, NULL, 0, 0, PMIX_INFO_LVL_1, PMIX_MCA_BASE_VAR_SCOPE_ALL, &pmix_client_globals.iof_verbose); (void) pmix_mca_base_var_register ("pmix", "pmix", "client", "base_verbose", "Verbosity for basic client operations", PMIX_MCA_BASE_VAR_TYPE_INT, NULL, 0, 0, PMIX_INFO_LVL_1, PMIX_MCA_BASE_VAR_SCOPE_ALL, &pmix_client_globals.base_verbose); /**** SERVER: VERBOSE OUTPUT PARAMS ****/ (void) pmix_mca_base_var_register ("pmix", "pmix", "server", "get_verbose", "Verbosity for server get operations", PMIX_MCA_BASE_VAR_TYPE_INT, NULL, 0, 0, PMIX_INFO_LVL_1, PMIX_MCA_BASE_VAR_SCOPE_ALL, &pmix_server_globals.get_verbose); (void) pmix_mca_base_var_register ("pmix", "pmix", "server", "connect_verbose", "Verbosity for server connect operations", PMIX_MCA_BASE_VAR_TYPE_INT, NULL, 0, 0, PMIX_INFO_LVL_1, PMIX_MCA_BASE_VAR_SCOPE_ALL, &pmix_server_globals.connect_verbose); (void) pmix_mca_base_var_register ("pmix", "pmix", "server", "fence_verbose", "Verbosity for server fence operations", PMIX_MCA_BASE_VAR_TYPE_INT, NULL, 0, 0, PMIX_INFO_LVL_1, PMIX_MCA_BASE_VAR_SCOPE_ALL, &pmix_server_globals.fence_verbose); (void) pmix_mca_base_var_register ("pmix", "pmix", "server", "pub_verbose", "Verbosity for server publish, lookup, and unpublish operations", PMIX_MCA_BASE_VAR_TYPE_INT, NULL, 0, 0, PMIX_INFO_LVL_1, PMIX_MCA_BASE_VAR_SCOPE_ALL, &pmix_server_globals.pub_verbose); (void) pmix_mca_base_var_register ("pmix", "pmix", "server", "spawn_verbose", "Verbosity for server spawn operations", PMIX_MCA_BASE_VAR_TYPE_INT, NULL, 0, 0, PMIX_INFO_LVL_1, PMIX_MCA_BASE_VAR_SCOPE_ALL, &pmix_server_globals.spawn_verbose); (void) pmix_mca_base_var_register ("pmix", "pmix", "server", "event_verbose", "Verbosity for server event operations", PMIX_MCA_BASE_VAR_TYPE_INT, NULL, 0, 0, PMIX_INFO_LVL_1, PMIX_MCA_BASE_VAR_SCOPE_ALL, &pmix_server_globals.event_verbose); (void) pmix_mca_base_var_register ("pmix", "pmix", "server", "iof_verbose", "Verbosity for server iof operations", PMIX_MCA_BASE_VAR_TYPE_INT, NULL, 0, 0, PMIX_INFO_LVL_1, PMIX_MCA_BASE_VAR_SCOPE_ALL, &pmix_server_globals.iof_verbose); (void) pmix_mca_base_var_register ("pmix", "pmix", "server", "base_verbose", "Verbosity for basic server operations", PMIX_MCA_BASE_VAR_TYPE_INT, NULL, 0, 0, PMIX_INFO_LVL_1, PMIX_MCA_BASE_VAR_SCOPE_ALL, &pmix_server_globals.base_verbose); /* check for maximum number of pending output messages */ pmix_globals.output_limit = (size_t) INT_MAX; (void) pmix_mca_base_var_register("pmix", "iof", NULL, "output_limit", "Maximum backlog of output messages [default: unlimited]", PMIX_MCA_BASE_VAR_TYPE_SIZE_T, NULL, 0, 0, PMIX_INFO_LVL_9, PMIX_MCA_BASE_VAR_SCOPE_READONLY, &pmix_globals.output_limit); pmix_globals.xml_output = false; (void) pmix_mca_base_var_register ("pmix", "iof", NULL, "xml_output", "Display all output in XML format (default: false)", PMIX_MCA_BASE_VAR_TYPE_BOOL, NULL, 0, 0, PMIX_INFO_LVL_9, PMIX_MCA_BASE_VAR_SCOPE_READONLY, &pmix_globals.xml_output); /* whether to tag output */ /* if we requested xml output, be sure to tag the output as well */ pmix_globals.tag_output = pmix_globals.xml_output; (void) pmix_mca_base_var_register ("pmix", "iof", NULL, "tag_output", "Tag all output with [job,rank] (default: false)", PMIX_MCA_BASE_VAR_TYPE_BOOL, NULL, 0, 0, PMIX_INFO_LVL_9, PMIX_MCA_BASE_VAR_SCOPE_READONLY, &pmix_globals.tag_output); if (pmix_globals.xml_output) { pmix_globals.tag_output = true; } /* whether to timestamp output */ pmix_globals.timestamp_output = false; (void) pmix_mca_base_var_register ("pmix", "iof", NULL, "timestamp_output", "Timestamp all application process output (default: false)", PMIX_MCA_BASE_VAR_TYPE_BOOL, NULL, 0, 0, PMIX_INFO_LVL_9, PMIX_MCA_BASE_VAR_SCOPE_READONLY, &pmix_globals.timestamp_output); /* max size of the notification hotel */ pmix_globals.max_events = 512; (void) pmix_mca_base_var_register ("pmix", "pmix", "max", "events", "Maximum number of event notifications to cache", PMIX_MCA_BASE_VAR_TYPE_INT, NULL, 0, 0, PMIX_INFO_LVL_1, PMIX_MCA_BASE_VAR_SCOPE_ALL, &pmix_globals.max_events); /* how long to cache an event */ pmix_globals.event_eviction_time = 120; (void) pmix_mca_base_var_register ("pmix", "pmix", "event", "eviction_time", "Maximum number of seconds to cache an event", PMIX_MCA_BASE_VAR_TYPE_INT, NULL, 0, 0, PMIX_INFO_LVL_1, PMIX_MCA_BASE_VAR_SCOPE_ALL, &pmix_globals.event_eviction_time); return PMIX_SUCCESS; }