MPI + OpenMPI混合编程的实现与性能分析
Implementation and Performance Analysis of MPI + Open MPI Hybrid Programming
摘要:
为充分发挥SMP集群的计算能力,结合SMP集群并行系统体系架构的特点,采用MPI + OpenMP混合并行编程模式,研究了基于SMP集群的多级混合并行程序的设计和实现方法。通过节点间使用MPI消息传递接口实现任务的粗粒度划分,节点内使用OpenMP实现细粒度任务并行划分的方法,开发了混合并行编程性能测试用例,并对其进行了测试和分析。测试结果表明,MPI + OpenMP混合编程模式,能够有效利用SMP集群节点间和节点内多级并行机制,充分发挥消息传递编程模型和共享内存编程模型各自的优势,可有效提升SMP集群的计算效率。
Abstract:
In order to give full play to the computing power of SMP cluster, combined with the characteristics of SMP cluster parallel system architecture, the design and implementation of multilevel hybrid parallel program based on SMP cluster are studied by using MPI + OpenMP hybrid parallel programming mode. The performance test case of hybrid parallel programming is developed by using MPI to realize the rough degree partition of tasks between nodes and OpenMP to realize the fine degree partition of tasks in nodes. The test result shows that MPI + OpenMP hybrid programming mode can effectively make use of the multi-level parallel mechanism of SMP cluster, and give full play to the advantages of the two programming models and effectively improve the computing efficiency of SMP cluster.
参考文献
|
[1]
|
迟学斌, 王彦棡, 王钰, 等. 并行计算与实现技术[M]. 北京: 科学出版社, 2015.
|
|
[2]
|
罗秋明, 明仲, 刘刚, 等. OpenMP编译原理及实现技术[M]. 北京: 清华大学出版社, 2012.
|
|
[3]
|
朱昶胜, 邓新, 冯力, 李浩, 等. MPI + OpenMP环境下的二元合金三维相场模型的并行方法[J]. 兰州理工大学学报, 2017, 43(4): 16-22.
|
|
[4]
|
杨书博, 乔先孝, 车小花. 基于MPI + OpenMP的三维弹性波方程混合并行有限差分算法[J]. 应用声学, 2018, 31(1): 75-83.
|
|
[5]
|
唐兵, Laurent BOBELIN, 贺海武. 基于MPI和OpenMP混合编程的非负矩阵分解并行算法[J]. 计算机科学, 2017, 44(3): 51-55.
|
|
[6]
|
刘超, 祝永志. 多核SMP集群混合并行编程技术的研究[J]. 微型机与应用, 2017, 36(4): 18-21.
|