APP下载

基于MPI的高精度归约函数设计与实现*

2021-05-11谷同祥

计算机工程与科学 2021年4期

何 康,黄 春,姜 浩,谷同祥,齐 进,刘 杰,3,4

(1.国防科技大学计算机学院,湖南 长沙 410073;2北京应用物理与计算数学研究所,北京 100000;3.国防科技大学并行与分布处理重点实验室,湖南 长沙 410073;4.国防科技大学复杂系统软件工程湖南省重点实验室,湖南 长沙 410073)

1 引言

近年来,高性能计算HPC(High Performance Computing)在国内外取得了高速发展,在科学研究、工程技术和军事模拟等各个方面有着越来越广泛的应用。

并行计算(Parallel Computing)是以高性能计算机为平台,应用于科学与工程领域,使用多个中央处理单元或多台计算机以协同工作方式解决大规模运算问题的计算模式[1]。并行计算可以加快计算速度,在更短的时间内解决相同的问题或者在相同的时间内解决更多的问题。随着多核处理器和云计算系统的广泛应用,并行已成为有效利用资源的首要手段。目前,国内外在高性能计算系统中最广泛使用的并行编程接口是MPI(Message-Passing Interface)。

MPI是一种基于信息传递的并行编程技术,它定义了一组具有可移植性的编程接口,已成为国际上的一种并行程序标准[1]。MPICH(a high performance portable MPI implementation)是一种最重要的MPI实现。MPICH的开发与MPI规范的制定是同步进行的,每当MPI推出新版本,就会有相应的MPICH的实现版本,所以MPICH最能反映MPI的变化与发展。MPI_REDUCE是MPI中的归约操作函数,该函数对通信子 (Communicator) 内所有进程上的数据进行归约操作,并将计算结果保存至根进程中, 是在并行计算中经常使用的通信函数。

随着信息化社会的飞速发展,人们对于信息处理的要求变得越来越高,计算的大规模、大尺度、长时程和高维数的特点变得越来越明显。……

登录APP查看全文