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

📄 sgoverview.tex

📁 刚才是说明 现在是安装程序在 LINUX环境下进行编程的MPICH安装文件
💻 TEX
字号:
\section{Communication Buffer management} The routines in this section fill two roles.  In the implementation of routines such as \texttt{MPID_Isend} where the only device-specific routines are  the few in \texttt{MPID_CORE}, it is necessary to have the ability to pack and  unpack partial messages.  Consider the case where the user calls \texttt{MPI_Isend( buf, 1, my_huge_indexed_type, ... )} where the total amount of data being sent is 100 MB.  Since \texttt{MPID_CORE} can only move contiguous data, we need to convert the described data into a sequence of contiguous memory segments of some reasonable size (we don\texttt{}t want to have to allocate a 100 MB temporary buffer). Thus, to implement this operation, we need a routine that can be called  repeatedly to get the next m bytes from the user\texttt{}s described data buffer. Further, we need to be able to pause and remember where we are in processing a datatype.  The MPI unpack routine does not have this flexibility. The other place where these routines are needed is in the implementation of efficient versions of the MPI collective communication routines.   These algorithms often need to look at the message as a range of bytes from which segments are extracted and moved.  The implementation of the MPI collective routines provided with MPICH will use these routines express the algorithms. These routines also provide a way to specify a data area that may be used in store-and-forward algorithms, without requiring copies to and from an intermediate device buffer.   Note that \texttt{MPID_Request}s include a segment descriptoin within them.

⌨️ 快捷键说明

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