《Fortran中的MPI程序设计》一书专注于教授如何使用Fortran语言进行并行计算编程,重点介绍消息传递接口(MPI)标准的应用技巧和最佳实践。
此文档描述了Fortran上mpi的使用方法。
第一章 前言
1.1 MPI 平行计算软件介绍
1.2 国家高速网络与计算中心的平行计算环境
1.3 在IBM计算机系统上如何使用MPI
1.3.1 IBM计算机系统的MPI Fortran程序编译指令
1.3.2 IBM计算机系统的Job command file
1.3.3 IBM计算机系统的平行程式的执行指令
1.4 在PC Cluster上如何使用MPI
1.4.1 PC Cluster上的MPI Fortran程序编译指令
1.4.2 PC Cluster 上的 Job command file
1.4.3 PC Cluster 上的平行程式执行指令
第二章 无边界数据交换的并行程序
2.1 MPI 基本命令
2.1.1 mpif.h include 文件
2.1.2 MPI_INIT, MPI_FINALIZE
2.1.3 MPI_COMM_SIZE, MPI_COMM_RANK
2.1.4 MPI_SEND, MPI_RECV
2.2 无边界数据交换的顺序程序 T2SEQ
2.3 数据不分割的并行程序 T2CP
2.4 MPI_SCATTER,MPI_GATHER,MPI_REDUCE
2.4.1 MPI_SCATTER,MPI_GATHER
2.4.2 MPI_REDUCE, MPI_ALLREDUCE
2.5 数据分割的并行程序 T2DCP
第三章 需要边界数据交换的并行程序
3.1 MPI_SENDRECV, MPI_BCAST
3.1.1 MPI_SENDRECV
3.1.2 MPI_BCAST
3.2 边界数据交换的顺序程序 T3SEQ
3.3 数据不分割的边界数据交换并行程序 T3CP
3.4 数据分割的边界数据交换并行程序(一) T3DCP_1
3.5 数据分割的边界数据交换并行程序 (二) T3DCP_2
第四章 格点数不能整除的并行程序
4.1 格点数不能整除的顺序程序 T4SEQ
4.2 MPI_SCATTERV、MPI_GATHERV
4.3 MPI_PACK、UNPACK、BARRIER、WTIME
4.3.1 MPI_PACK、MPI_UNPACK
4.3.2 MPI_BARRIER、MPI_WTIME
4.4 数据分割的并行程序 T4DCP
第五章 多维数组的并行程序
5.1 多维数组的顺序程序 T5SEQ
5.2 不进行数据切割多维数组并行程序 T5CP
5.3 最后一维数据切割的多维数组并行程序 T5DCP
5.4 与二维分割相关的 MPI 子例程
第六章 提升MPI程序效率的方法
6.1 非阻塞的数据传输
6.2 数据传输合并
6.3 使用边界计算代替边界交换
6.4 输入输出数据的安排
第七章 导出的数据类型
7.1 导出的数据类型介绍
7.2 数组转换方法
7.3 两方回归与管线法
第八章 多方向依赖及SOR解法
8.1 四向依赖及SOR解法
8.2 黑白点间隔 SOR 解法
8.3 斑马线 SOR 解法
8.4 八向依赖和四色点间隔的SOR解法
第九章 有限元方法程序
9.1 有限元方法顺序程序
9.2 并行化的有限元方法程序
附录一 编写C语言的MPI程序
参考文献
Parallel Processing without Partition of 1-D Arrays
Parallel Processing with Partition of 1-D Arrays
Parallel on the 2nd Dimension of 2-D Arrays without Partition
Parallel on the 2nd Dimension of 2-D Arrays with Partition
Partition on the 3rd dimension of 3-D Arrays