MPI程序的6个最基本调用语句

您所在的位置:网站首页 结束词语解释 MPI程序的6个最基本调用语句

MPI程序的6个最基本调用语句

2024-07-10 08:07| 来源: 网络整理| 查看: 265

MPI程序的框架结构 头文件相关变量声明程序开始程序体计算与通信程序结束 MPI的6个最基本调用(基于C语言) MPI初始化

MPI_INIT(),用于初始化MPI程序,所有MPI程序的第一条可执行语句都是这条。

实例

int MPI_Init(int *argc, char **argv)

MPI 结束

MPI_FINALIZE(),结束MPI程序的运行,是MPI程序的最后一条可执行语句,否则程序的运行结果是不可预知的。

实例

int MPI_Finalize(void)

获取当前进程标识

MPI_COMM_RANK(comm,rank),其中comm 为要输入的该进程所在的通信域句柄,rank 为输出的该进程在comm中的标识号。不同的进程可以利用标识号将自身和其他进程区别开来。

实例

int MPI_Comm_rank(MPI_Comm comm, int *rank)

获取通信域包含的进程总数

MPI_COMM_SIZE(comm,size),其中comm 为要输入的该进程所在的通信域句柄,size为要输出的通信域中包含的进程数量。

实例

int MPI_Comm_size(MPI_Comm comm, int *size)

消息发送

MPI_SEND(buf,count,datatype,dest,tag,comm),其中,buf为发送缓冲区的起始地址(可选类型),count为即将发送的数据的个数(非负整数),datatype为发送数据的数据类型(MPI特定的数据类型),dest为目的进程标识号(整型),tag为消息标志(整型),用以区分本次发送的消息和本进程向同一目的进程发送的其它消息,comm为通信域(句柄),该语句中所有参数均为输入参数。

实例

int MPI_Send(void* buf, int count, MPI_Datatype datatype, int dest, int tag, MPI_Comm comm)

消息接收

MPI_RECV(buf,count,datatype,source,tag,comm,status),其中,buf为接收缓冲区的起始地址(可选数据类型),count为最多可接收的数据的个数(整型),datatype为接收数据的数据类型(MPI特定的数据类型),source为发送数据的进程的进程标识号(整型),tag为消息标识与相应的发送操作的标识相匹配相同(整型),comm为本进程和发送进程所在的通信域(句柄),status 返回状态信息 (状态类型),buf和status为输出,其余均为输入参数。

实例

int MPI_Recv(void* buf, int count, MPI_Datatype datatype, int source, int tag, MPI_Comm comm, MPI_Status *status)



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3