1
MPICH&PBS 使用指南
一、MPI 编程 .................................................................................................................................. 1
二、MPICH 下编译和运行 ............................................................................................................. 3
三、PBS 环境下运行....................................................................................................................... 4
一、MPI 编程
1、MPI 编程函数介绍
MPI 实际上是一个提供并行程序消息传递机制的函数库,有 40 多个函数,常用的有 6 个基本函数。下
面以 C 语言为例简单介绍这些函数。
(1)MPI_Init 函数
定义:int MPI_Init(int *argc, char ***argv)
功能:用命令行参数初始化 MPI 环境
输入:argc、argv—表示命令行参数,同 C 语言的 main()函数参数格式,argv 中包含欲并行运行的进程
数
输出:返回值—非零/零表示初始化是否成功
说明:该函数必须为程序中第一个调用的 MPI 函数
示例:MPI_Init(&argc, &argv); // argc、argv 引用的是 mian()函数的参数
(2)MPI_Finalize 函数
定义:int MPI_Finalize (void)
功能:结束 MPI 程序的运行,指结束 MPI 环境的使用
输入:无
输出:返回值—非零/零表示结束 MPI 环境是否成功
说明:该函数必须为程序中最后一个调用的 MPI 函数
示例:MPI_ Finalize ();
(3)MPI_Comm_size 函数
定义:int MPI_Comm_size(MPI_Comm comm, int *size)
功能:得到总进程数
输入:comm 通信域句柄(系统默认的为 MPI_COMM_WORLD,也可自己定义)
输出:size,即通信域 comm 内包括的进程数整数
(4)MPI_Comm_rank 函数
定义:int MPI_Comm_rank(MPI_Comm comm, int *rank)