第2卷第2期1997 年6月
气 候 与 环 境 研 究C li m atic and Environm en tal R esearch
V o l .2, N o.2June 1997
气候模式并行计算*
毕训强 曾庆存
(中国科学院大气物理研究所,北京 100080)
摘 要 气候模式并行计算是国内外最近重视开展的在大规模并行计算机上应用的并行软件的开发工作。“气候动力学和气候预测理论的研究”国家攀登项目近年来先后在国产曙光
1000和曙光1000A 并行计算机上开展了气候模式并行计算工作。所用的气候模式是气候动力
学项目“八五”阶段设计发展的9层全球格点大气环流模式和从1997年起着手研制的18层全球格点大气环流模式。这是我国首次进行的气候数值模式并行计算工作,阶段性工作取得了合理的并行效率。研究表明以大气环流模式为代表的气候模式是最适合并行计算机实际应用的科研任务之一,国产并行计算机有能力在该领域实际应用中发挥作用。关键词 大气环流模式 并行计算机 气候模式 并行计算
1 引言
气候异常和气候变化是全球热点问题之一。对气候变化及其预测的气候模式设计和模拟研究一直是当代气候研究中的一个非常关键的环节,是研究复杂气候系统的最重要途径之一,也是衡量一个国家气候研究水平的重要标志。近年来,国内外气候研究都充分认识到高分辨率高精度的气候模式对改善气候预测水平的重要性,并着手建立或完善其高分辨率、物理过程参数化方案更为完备细致的新一代气候模式。这些工作使得新一代气候模式的长时间气候模拟试验所需要的巨大量的计算速度和内存资源,超出了单个计算处理器(包括向量计算机)的承受能力。国际上一些大气科学研究机构,已开始(或刚刚实现)把他们的气候模式移植到大规模并行计算机上[1~3]。
1997-05-29收到,1997-06-17收到修改稿
3 本工作得到国家基础性研究重大项目“气候动力学和气候预测理论研究”与国家863项目863-306-Z D -01-9课题的资助
气候模式的发展很大程度上取决于电子计算机的发展水平。“八五”阶段我国开展的“气候动力学及气候预测理论的研究”攀登计划项目[4],通过派出气候模式设计专家利用国外先进计算机资源以及使用从国外进口的中型计算机,已基本建立起我国自己设计的气候系统各分系统(大气环流、海洋环流、陆面和地表过程)的动力学模式,完成了各分系统模式的耦合和组装,且都通过了大规模的模拟检验并已应用在夏季旱涝跨季度预测和二氧化碳倍增造成全球气候变化预测及气候数值模拟研究之中。这些模式的垂直分辨率和物理过程方案细致程度与国际同期气候模式相当,设计思想具有许多优点和特,综合模拟能力赶上了国际同期先进气候模式的模拟水平。但因为国内计算机资源有限,我国气候模式应用强度远不如国外发达国家,这在一定程度上削弱了我国气候模式在国际气候研究中的影响。
计划中的“气候动力学及气候预测理论的研究”攀登计划项目“九五”阶段研究的核心内容是建立和研制发展新一代高分辨率高精度大气、海洋、陆面、冰雪圈耦合的气候模式,模式复杂性程度和计算量都比现有模式大了很多。面临计算机资源严重不足的现状,开展气候模式并行计算尤为必要。本文第2部分将介绍并行计算概念与气候模式并行计算基本方法;第3、4部分则分别介绍“八五”阶段后期我们在国产曙光1000并行机上N X 并行环境下实现的9层全球格点大气环流模式并行计算和最近在国产曙光1000A 并行机上PVM 并行环境下实现的18层全球大气环流模式并行计算。
2 并行计算概念与气候模式并行计算基本方法
并行计算是将单一计算任务分配到多个计算处理器去完成。衡量并行计算效率的并行加速比定义为
S p =
t seq
t p
,其中,t seq 为用串行机完成该任务所需的时间,t p 为用p 个处理器并行完成该任务所需的时间。
对于一个特定的计算任务,设该任务中不能并行只能串行执行的运算量占总运算量的百分比为s ,可并行执行的运算量百分比为1-s ,则(负载完全平衡且忽略并行系统额外开销时的)并行加速比满足Am dah l 定律:
S p =
1s +
(1-s )p
=p sp +1-s ≤1
s
.
就气候模式并行计算而言,只能串行运算量百分比s 随模式分辨率和模式物理过程细致程度的提高而减小,所以气候模式并行计算能取得的最大并行加速比也逐渐增大,而
且呈现出多处理器时并行加速比接近线性增长的结果。H ack 等[2]及L eslie 等[3]
的工作都
取得了16个处理器并行计算加速比13以上的结果。
区域分解方法是进行气候模式并行编程常采用的基本方法。通过沿经向(或纬向)的带状(或块状)分割,整个大区域(或全球)模式计算量能很自然地分配到多个处理器上进行,每个处理器只计算各自带(或块)内部分,在需要时与其它处理器发生通讯。对以有限差分方法求解的格点模式,通讯主要发生在动力框架部分计算中需要相邻带数据时。谱模式中的通讯主要发生在需要高斯求积和快速富里叶变换时。由于谱模式中谱空间中谱系数间的计算并行效率不高,在同等模式分辨率下,格点模式比谱模式并行加速比稍高,也易于进行程序并行化移植。
过程分解方法是近年来利用共享内存并行机在区域分解方法基础上提高气候模式并行效率采用的方法。这主要是因为气候模式几大类物理过程(如降水、辐射、摩擦过程)间的计算很少同时关联,可并行计算;
海洋与大气耦合模式中采用海洋和大气的同步耦合方式(替代目前常采用的异步耦合方式)可实现海洋、大气两大系统间的并行计算。
001 气 候 与 环 境 研 究2卷
3 在曙光1000上实现的I A P 9层大气环流模式并行计算
1995年4月,国家863计划中的重中之重项目研制出曙光1000大规模并行处理(M PP )并行机。该并行机基于M essage -Passing 机制的松散耦合结构,包括32个基于iPSC 860的计算节点,2个系统服务节点子系统和2个I O 节点组成的外存子系统。这些节点由一个的2维W o r m ho le 路由器网连接。系统内存总容量1GB (每个节点32M B )。
网络总通讯容量为4.8GB s (相邻节点间传输带宽33M B s )。单精度峰值计算速度2.5Gflop s 。该机支持N X 、PVM 、EXPR ESS 等并行环境运行FOR TRAN (或C )并行程序。
中国科学院大气物理研究所(I A P )9层大气环流模式是“八五”阶段国家攀登计划“气候动力学和气候预测理论的研究”在气候设计和发展方面最主要研究成果之一[5]。该模式是一个包括对流层和低层平流层的原始方程全球格点有限差分模式。模式依照实际大气热力学变量全球平均的垂直廓线作为模式标准大气,而将温度、位势高度和地面气压等热力学变量相对于这个标准的偏差作为预报量,有助于减少计算误差,
尤其是减小了一般方案在计算陡峭地形处气压梯度力时常有的大计算误差;模式动力框架能满足差分方程组与微分方程组各种物理系数整体性质,内部协调,计算稳定。模式择优选用和改进发展了国际模式中采用的完备、细致的物理过程参数化方案。该模式各部分具有可移植性、兼容性和计算稳定性。长时间数值积分结果表明该模式所模拟的各月平均气候状态、季节循环、气候类型分类及区域气候与观测相符,已能相当可靠地供大规模气候模拟和气候预测研究使用[4~10]。
大气环流模式的计算量主要在动力框架和物理过程两大部分。在I A P 9层大气环流模式中,辐射传输、云和降水过程、摩擦项及地表面能量收支等计算模式方程组中源汇项的物理过程参数化方案占全部计算量的67%,由动力框架和水汽平流组成的模式动力框架部分的计算占全部计算量的18%。模式物理过程部分计算的共同特点是只在每个气柱内计算,相邻气柱间的水平方向联系只通过模式动力框架来实现,这种水平方向格点间物理过程计算时的互不相关性使我们能够实现高效率的气候模式并行计算。
我们采用区域分解方法实现了I A P 9层大气环流模式在曙光1000上N X 并行环境下的并行计算。首先将全球计算格点分割成东西(纬向)方向的条状格点分布,不同计算结点承担各自条状带内所需的计算工作。模式动力框架每个时步开始时调用信息传递命令进行相邻纬向条状带(南北)边界上数据更新。
设我们用N 个计算结点,则原始数组A (72,46)可分割为A (72,M ),其中
M =(46+2)
N
+2,
这样,对于不同数目的N ,如N 取2、4、8、16时,不同数目计算结点的并行程序基本相近,并行程序差别只是与模式中极区滤波方案有关的几个子程序。对纬向条状格点带分割,我们在曙光1000上所能用到的最多合理结点数目是23。由模式原始串行程序到并行程序,总共120个子程序中的约40个与模式动力框架有关的子程序要添加并行计算所需的信息传递语句。
1
012期毕训强等:气候模式并行计算
表1给出了I A P 9层大气环流模式串行和并行程序在曙光1000上积分1d 的内存占用和运行时间、相应的并行加速比和单节点利用效率。对2、4、6、16和23个计算结点,我们取得的并行加速比分别为1.71、2.65、4.30、5.90和7.23。
表1 I AP 9层大气环流模式在曙光1000上积分1d 的并行性能
模式分辨率
72×46×9
(72,46)
单节点
(72,26)2节点(72,14)4节点(72,8)8节点(72,5)16节点(72,4)23节点占用内存 M B 25.515.910.27.25.95.4运行时间 s 4320252616301005732597加速比1.01.712.654.305.907.23单节点效率
1.0
0.855
0.663
0.538
0.38
0.314
4 在曙光1000A 上实现的18层大气环流模式并行计算
1997年2月,国家863计划中的重中之重项目研制出曙光1000A 大规模并行处理(M PP )并行机。该并行机是由16个133M H z 主频的曙光天演Pow er PC 工作站组成的
工作站集。系统内存总容量2GB (每个结点128M B )。计算结点间通讯由快速以太网(100M B s )连接,结点间传输带宽10M B s 。单精度峰值计算速度4.25Gflop s 。系统支持PVM 、M P I 标准并行环境运行FOR TRAN (或C )并行程序。我们在曙光1000A 上进行并行计算使用的气候模式是“气候动力学和气候预测理论的研究”攀登项目计划于“九五”阶段研制的一个18层全球大气环流模式的雏形。该模式在动力框架和计算格式方面继承了I A P 9层大气环流模式的许多优点,气候动力学项目“八五”阶段在大气环流模式物理过程参数化方案方面的一些最新研究进展也将在该模式中采用。模式垂直坐标采用普遍适合的归一化坐标,该垂直坐标能很方便地变换为混合p -Ρ或Γ坐标。模式水平方向采用可灵活选取的多种水平分辨率。已实现的4种水平分辨率的模式下边界数据(基于美国国家大气研究中心谱模式原有下边界数据准备而成)的水平网格距分别为:22.5o ×22.5o 、5.625o ×5.625o 、3.75o ×3.75o 和2.8125o ×2.8125o 。
采用与前面类似的区域分解方法,我们实现了18层大气环流模式在曙光1000A 上PVM 并行环境下的并行计算。通讯部分采用了美国国家大气研究中心气候模式中的一些避免通讯冲突技术。表2~5分别给出了4种水平分辨率的模式用不同数目处理器积分1d 所需运行时间、相应的并行加速比和CPU 利用效率,其中:
CPU 利用率=(用户时间+系统时间) 运行时间,并行加速比=单节点运行时间 多节点运行时间.
对水平网格距为22.5o ×22.5o 的18层模式,2、4、8个计算节点的并行加速比分别为1.68、2.46、2.16。对水平网格距为5.625o ×5.625o 的18层模式,2、4、8、16个计算节点的并行加速比分别为1.61、2.77、4.55、4.59。对水平网格距为3.75o ×3.75o 的18层模式,2、4、6、8、12、16个计算节点的并行加速比分别为1.56、2.91、4.26、4.66、4.74、5.61。由于
201 气 候 与 环 境 研 究2卷
表2 模式用不同数目处理器积分1d 的并行效能
模式分辨率
16×9×18
(16,9)
单节点
(16,6)2节点(16,4)4节点(16,3)8节点用户时间 s 96.448.724.314.5系统时间 s 0.11.61.050.9运行时间 s
98.258.440.045.5CPU 利用率
98.3%86.1%63.4%32.4%并行加速比
1.0
1.68
2.46
2.16
表3 模式用不同数目处理器积分1d 的并行效能
模式分辨率
并行计算框架64×33×18
(64,33)
单节点
(64,18)2节点(64,11)4节点(64,6)8节点(64,4)16节点用户时间 s 1539765.6374.2183.198.77系统时间 s 0.516.411.48.54.75运行时间 s
1541.3955.7556.3338.8335.9CPU 利用率
99.9%81.8%69.3%56.6%30.8%并行加速比
1.0
1.61
2.77
4.55
4.59
表4 模式用不同数目处理器积分1d 的并行效能
模式分辨率
96×49×18
(96,49)
单节点
(96,26)2节点(96,14)4节点(96,10)6节点(96,8)8节点(96,6)12节点(96,4)16节点用户时间 s 3479.91812863.3570.5430287.9212.4系统时间 s 0.836.421.017.516.614.79.3运行时间 s
348122291195818747734620CPU 利用率
99.99%82.9%74.0%71.9%60.0%41.2%35.8%并行加速比
1.0
1.56
2.91
4.26
4.66
4.74
5.61
表5 模式用不同数目处理器积分1d 的并行效能
模式分辨率
128×65×18
(128,65)
单节点
(128,34)2节点(128,18)4节点(128,10)8节点(128,6)16节点用户时间 s 6696.032421551775.6385.7系统时间 s 6.861.941.942.218.2运行时间 s
20551(6703)4014.021761361.01202.0CPU 利用率
32.0%(100%)
82.3%73.2%60.1%33.6%并行加速比
(1.0)
5.12(1.67)
9.44(3.08)
15.1(4.93)
17.1(5.58)
最高水平分辨率(水平网格距为2.8125o ×2.8125o )的18层模式的运行需要很大内存(约250M B ),超出了曙光1000A 单个节点所能提供的128M B ,在单节点上作串行程序计算时必须要把硬盘作缓冲内存使用,这就很大程度影响了计算机效率(仅为32%)多节点并行计算时没有内存不足问题。对水平网格距为2.8125o ×2.8125o 的模式,2、4、8、16个计算节点的并行加速比分别为5.12、9.44、15.1、17.1,这种超线性加速比是因为模式单节点串行计算时计算机内存不足造成的。扣除内存不足因素,假设单节点串行计算时CPU 利用率为100%,则可以估计出对水平网格距为2.8125o ×2.8125o 的模式,2、4、8、16个计算节点的并行加速比分别为1.67、3.08、4.93、5.58。
3
012期毕训强等:气候模式并行计算
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论