MPI并行编程入门
1. MPI“Hello World”程序
以下是C语言中MPI版本的“Hello World”程序示例:
#include <stdio.h>
#include "mpi.h"
int main (int argc, char *argv[]){
int rank, size;
/* starts MPI */
MPI_Init (&argc, &argv);
/* get current process rank */
MPI_Comm_rank (MPI_COMM_WORLD, &rank);
/* get number of processes */
MPI_Comm_size (MPI_COMM_WORLD, &size);
/* print the rank and number of processes */
printf("Hello world from process %d of %d\n", rank, size );
/* ends MPI */
MPI_Finalize();
return 0;
}
在这个程序中有两个要点需要强调:
- 引入了新的头文件 mpi.h
,该头文件包含了所有MPI函数的原型,以及编译MPI程序所需的所有宏和类型定义。
- 所有MPI函数都以字符串“MPI_”开头,实际上,MPI中定义的所有函数、宏和类型都以这个字符串开头。