⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 mpid_comm.tex

📁 刚才是说明 现在是安装程序在 LINUX环境下进行编程的MPICH安装文件
💻 TEX
字号:
\startmanpage\mantitle{MPID{\tt \char`\_}Comm}{tex}{10/7/2002}\manname{MPID{\tt \char`\_}Comm}--- Description of the Communicator data structure \subhead{Synopsis}\startvb\begin{verbatim}typedef struct {     int           handle;        /* value of MPI_Comm for this structure */    volatile int ref_count;    int16_t       context_id;    /* Assigned context id */    int           remote_size;   /* Value of MPI_Comm_(remote)_size */    int           local_size;    /* Value of MPI_Comm_size */    int           rank;          /* Value of MPI_Comm_rank */    MPID_VC *(*virtural connection)[]; /* Virtual connection table */    MPID_Comm_kind_t comm_kind;  /* MPID_INTRACOMM or MPID_INTERCOMM */    MPID_List     attributes;    /* List of attributes */    MPID_Group    *local_group,  /* Groups in communicator. */                  *remote_group; /* The local and remote groups are the                                 same for intra communicators */    char          name[MPI_MAX_OBJECT_NAME];  /* Required for MPI-2 */    MPID_Errhandler *errhandler;  /* Pointer to the error handler structure */    struct MPID_Collops_struct  *coll_fns;    /* Pointer to a table of                                             functions implementing the                                             collective routines */  /* other, device-specific information */#ifdef MPID_DEV_COMM_DECL    MPID_DEV_COMM_DECL#endif} MPID_Comm;\end{verbatim}\endvb\subhead{Notes}Note that the size and rank duplicate data in the groups thatmake up this communicator.  These are used often enough that thisoptimization is valuable.\parThe virtual connection table is an explicit member of this structure.This contains the information used to contact a particular process,indexed by the rank relative to this communicator.\parGroups are allocated lazily.  That is, the group pointers may benull, created only when needed by a routine such as {\tt MPI{\tt \char`\_}Comm{\tt \char`\_}group}.The local process ids needed to form the group are available withinthe virtual connection table.For intercommunicators, we may want to always have the groups.  If not,we either need the {\tt local{\tt \char`\_}group} or we need a virtual connection tablecorresponding to the {\tt local{\tt \char`\_}group} (we may want this anyway to simplifythe implementation of the intercommunicator collective routines).\parThe pointer to the structure containing pointers to the collectiveroutines allows an implementation to replace each routine on aroutine-by-routine basis.  By default, this pointer is null, as are thepointers within the structure.  If either pointer is null, the implementationuses the generic provided implementation.  This choice, rather thaninitializing the table with pointers to all of the collective routines,is made to reduce the space used in the communicators and to eliminate theneed to include the implementation of all collective routines in all MPIexecutables, even if the routines are not used.\par\par\subhead{Module}Communicator-DS\par\par\subhead{Question}For fault tolerance, do we want to have a standard field for communicatorhealth?  For example, ok, failure detected, all (live) members of failedcommunicator have acked.\endmanpage

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -