MPI最基本函数整理

MPI最基本函数整理

MPI-1共有128个调用接口,MPI-2共有287个调用接口。整体上MPI是非常庞大的,但是,从理论上说,MPI所有的通信功能可以用它的最基本的6个调用来实现。

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

功能:MPI_Init是MPI程序的第一个调用,完成MPI程序初始化工作,通过获取main函数的参数,让每一个MPI进程都能获取到main函数的传入参数信息。

int MPI_Finalize(void)

功能:MPI_Finalize是MPI程序的最后一个调用,清除全部MPI环境,必须要有,否则程序的运行结果不可预知。

int MPI_Comm_rank(MPI_Comm comm, int *rank)

功能:这一调用用于获取调用进程在给定的通信域中的进程标识号,每个进程有了标识号之后,不同的进程才可以将自己与其他进程进行区分,实现进程的并行与协作。

int MPI_Comm_size(MPI_Comm comm, int *size)

功能:这一调用返回给定的通信域中所包含的进程总数,不同的进程通过这一调用知道在给定的通信域中一共有多少个进程在并行执行。

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

功能:将发送缓冲区buf中的count个datatype数据类型的数据,发送给comm通信域中的标识号为dest,消息标志为tag的进程。

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

功能:从comm通信域中标识号为source的进程,接收消息标记为tag,消息数据类型为datatype,个数为count消息并存储在buf缓冲区中,并将该过程的状态信息写入status中。

其他常见:

double MPI_Wtime(void)

功能:记录时间

例:

#include <iostream>
#include <vector>
#include <map>
#include <mpi.h>

using namespace std;<
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值