📄 sds.h
字号:
/* * Copyright (c) 2004-2005 The Trustees of Indiana University and Indiana * University Research and Technology * Corporation. All rights reserved. * Copyright (c) 2004-2005 The University of Tennessee and The University * of Tennessee Research Foundation. All rights * reserved. * Copyright (c) 2004-2005 High Performance Computing Center Stuttgart, * University of Stuttgart. All rights reserved. * Copyright (c) 2004-2005 The Regents of the University of California. * All rights reserved. * $COPYRIGHT$ * * Additional copyrights may follow * * $HEADER$ *//** @file: * * The Open MPI Start-up Discovery Service * */#ifndef ORTE_SDS_H#define ORTE_SDS_H#include "opal/mca/mca.h"/* * Module and component structures */struct orte_sds_base_module_1_0_0_t;typedef struct orte_sds_base_module_1_0_0_t orte_sds_base_module_1_0_0_t;typedef orte_sds_base_module_1_0_0_t orte_sds_base_module_t;struct orte_sds_base_component_1_0_0_t;typedef struct orte_sds_base_component_1_0_0_t orte_sds_base_component_1_0_0_t;typedef orte_sds_base_component_1_0_0_t orte_sds_base_component_t;/** * Selection function * * Priority list: * * - 0 singleton process (not seed) * - 20 process has name provided by starter * - 40 seed process * - 60 process has name provided by starter and needs to * override seed. This should be used with care, and * is mainly intended for environments where orte is * not the starter (such as cnos) */typedef orte_sds_base_module_t* (*orte_sds_base_component_init_fn_t)(int *priority);/* * Module functions *//** * Contact universe and set contact information * * Attempt to contact the universe to get replica contact information. */typedef int (*orte_sds_base_contact_universe_fn_t)(void);/** * Set Name and Job information for current process * * Set name and job information for current process. This information * includes: * * - orte_process_info.my_name * - orte_process_info.vpid_start * - orte_process_info.num_procs * * From this, the ns is able to develop a map of all processes started * in the curent job. * * Upon startup, each process must discover its official ORTE process * name. There are several ways this name could be passed to the * process. This typicall involves an environmental parameter of some * appropriate name, possibly followed by some computation of the vpid * based on process rank. This function checks the different * environmental parameters to find the one that has been set with the * appropriate value, determines (based on that) the name of this * process, and then sets that value in the orte_system_info global * structure. */typedef int (*orte_sds_base_set_name_fn_t)(void);typedef int (*orte_sds_base_module_finalize_fn_t)(void);/* * the standard module data structure */struct orte_sds_base_module_1_0_0_t { orte_sds_base_contact_universe_fn_t contact_universe; orte_sds_base_set_name_fn_t set_name; orte_sds_base_module_finalize_fn_t finalize;}; /* * the standard component data structure */struct orte_sds_base_component_1_0_0_t { mca_base_component_t sds_version; mca_base_component_data_1_0_0_t sds_data; orte_sds_base_component_init_fn_t sds_init;};/* * Macro for use in components that are of type ns v1.0.0 */#define ORTE_SDS_BASE_VERSION_1_0_0 \ /* sds v1.0 is chained to MCA v1.0 */ \ MCA_BASE_VERSION_1_0_0, \ /* sds v1.0 */ \ "sds", 1, 0, 0#endif
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -