目录
1、MPI基本函数
#include <stdio.h>
#include "mpi.h"
int main(int argc, char** argv){
int rank,size;
MPI_Init(&argc, &argv);
MPI_Comm_rank(MPI_COMM_WORLD, &rank);
MPI_Comm_size(MPI_COMM_WORLD, &rank);
printf("I am %d.\n", rank);
printf("There are %d processes.\n",size);
MPI_Finalize();
return 0;
}
MPI_Init(&argc, &argv)
告知MPI系统进行所有必要的初始化设置。例如,系统可能需要为消息缓冲区分配存储空间,为进程指定进程号等
.PS:在调用MPI_Init前不应该调用其他MPI函数
MPI_Finalize()
用来清理 MPI 环境的。这个调用之后就没有 MPI 函数可以被调用了。
MPI_Comm_rank(MPI_COMM_WORLD, &rank)
返回 communicator 中当前进程的 rank。 communicator 中每个进程会以此得到一个从 0 开始递增的数字作为 rank 值。rank 值主要是用来指定发送或者接受信息时对应的进程。
MPI_Comm_size(MPI_COMM_WORLD, &rank)
返回 communicator 的大小,也就是 communicator 中可用的进程数量。
2、点对点通信函数
例、使用MPI,计算cos x 函数的积分值,积分区间为(0,2PI)