阿里云超算上气象应用WRF的集谛优化

简介: 阿里云超算上气象应用WRF的集谛优化

作者:孙相征
弹性高性能计算(E-HPC,https://ehpc.console.aliyun.com/ )基于阿里云基础设施,为用户提供公有云之上的HPC服务。除了提供计算资源环境,E-HPC还提供了很多独立的功能模块,如作业管理、用户管理、集群命令执行等。其中,借助集谛(CloudMetrics)模块,用户可以通过性能大盘查看集群资源的饱和度,从全局监控集群节点的状态;从节点性能,查看节点具体指标的变化曲线和历史数据,并且能够与调度的作业信息相关联;从进程性能,查看具体进程的历史信息,进而确定需要剖析的进程;从性能剖析,获取热点函数分布及其调用栈信息,了解应用内部的执行状态。

WRF(Weather Research and Forecasting)是新一代中尺度预报模式,被气象行业广泛应用的开源数值气象模拟(NWS)软件,随着气象气候计算上云的趋势,WRF需要针对云超算环境进行优化,本文描述了通过集谛分析WRF在云上运行的性能特征,逐步实现性能优化的过程。

运行算例是中国范围天气预测;运行平台为ecs.scch5.16xlarge,32core, 64vCPU, 192GB内存,配有10Gbit/s Ethernet和46Gbit/s RoCE网络。

初始运行监控

借助集谛与集群调度系统相关联、历史信息自动保存的功能,可以直接在调度系统提交作业,待作业完成后随时查看作业运行过程中的运行性能特征,如图1所示。

base_node_cn.jpg
a.按节点分类
base_node_mt.jpg
b.按指标分类
图1 WRF运行时性能特征

从单个节点不同指标变化(图1.a)可以看出,程序有明显的周期性特征,存储带宽会在一段间隔有明显的增大,同时伴随着节点间网络通讯的减少。从本算例,运行共产生7个结果文件,与监控的7次存储带宽高峰相对应,而且结果文件主要是在每小时预测后统一写出,在运行过程中,没有存储带宽的压力。
从节点间网络性能变化(图1.b)看,节点间的网络负载不均衡,从应用逻辑也可以解释,由于天气预测跟地形(陆地、海洋等)相关,或伴随负载动态变化(如云的移动),进程边界交换信息不同,节点间会存在网络通讯不均衡现象。但是,所有节点的网络带宽偏低,由于平台配置两种网络,需要检查是否使用高速RoCE网络。

改用RoCE性能监控

通过查看运行配置,发现MPI通讯为Ethernet,因此需要调整网络配置利用高速的RoCE网络,提交作业再次监控,得到运行特征如图2所示。

net_node_cn.jpg
a.按节点分类
net_node_mt_net.jpg
b.按指标分类
图2 使用RoCE后的WRF运行时性能特征

显然,程序运行使的节点间网络带宽和存储带宽增大,原因在于计算时通讯使用了RoCE网络,可以将Ethernet带宽资源用于存储操作使用。网络通讯带宽由原来的180MB/s、240MB/s提升到320MB/s、450MB/s。
从监控结果发现,节点间的存储带宽极不均衡,仅有compute22节点负载文件操作,难以利用NAS的整体带宽资源。

PNetCDF多节点并行I/O

通过日志分析文件I/O操作耗时比例较高(约25%左右,以某算例为例,并随计算规模变化)。WRF使用NetCDF文件格式,若采用NetCDF classic经典模式,即主进程汇集所有从进程的部分结果数据,再由主进程完成文件写操作,如图3 a),跟之前的网络和存储监控数据相吻合。

pnetcdf_fig_ab.png
图3 NetCDF I/O 方案比较。a) 串行I/O; b)并行I/O。

为了提高运行效率,可采用并行NetCDF I/O的优化方案,即所有节点参与I/O操作,减少I/O操作等待时间,如图3 b)所示。

因此,可以借此PNetCDF方案提升WRF的性能,提交作业再次监控,得到运行特征如图4所示。

pnet_node_cn.jpg
a.按节点分类
pnet_node_mt.jpg
b.按指标分类

图4 使用RoCE+PNetCDF后的WRF运行时性能特征

可以看出,每个节点均有I/O操作相关的指标监控数据,跟PNetCDF的原理相匹配。从监控结果看,每完成一小时预测后的文件操作时间明显减小,性能得到进一步提升。

总结

通过E-HPC集谛 —— 集群运行监控和应用性能分析模块,能够充分了解WRF在运行过程的性能特征,改变了以往仅靠WRF日志输出的时间戳观测程序运行状态。同时,可以以应用的运行性能特征为依据,使用RoCE高速网络和PNetCDF并行I/O的优化策略,逐步提高了WRF的运行效率,最终性能提高加速比达到2.4X,如图5所示。

Speedup.jpg
图5 WRF单小时平均预测时间的性能优化结果

目录
相关文章
|
6月前
|
存储 传感器 编解码
中科星图——MOD11A1 V6数据集(Terra星搭载的中分辨率成像光谱仪获取的地表温度/发射率(LST/E)产品)
中科星图——MOD11A1 V6数据集(Terra星搭载的中分辨率成像光谱仪获取的地表温度/发射率(LST/E)产品)
105 5
|
机器学习/深度学习 人工智能 数据挖掘
数据上新 | AI Earth上线长时序土地覆盖数据集(来自武汉大学黄昕教授团队)
数据上新 | AI Earth上线长时序土地覆盖数据集(来自武汉大学黄昕教授团队)
数据上新 | AI Earth上线长时序土地覆盖数据集(来自武汉大学黄昕教授团队)
|
5月前
|
存储 数据可视化 大数据
高性能计算HPC优化实例在摩托车外流场仿真场景的最佳实践
本文整理自阿里云高性能计算研发工程师曹杭在【HPC优化实例商业化发布会】中的动手实验分享,集中讲解HPC优化实例动手实验Demo细节。
|
机器学习/深度学习 数据可视化 数据挖掘
第十二届“中国软件杯”大赛:A10-基于机器学习的分布式系统故障诊断系统——baseline(一)
第十二届“中国软件杯”大赛:A10-基于机器学习的分布式系统故障诊断系统——baseline(一)
587 0
第十二届“中国软件杯”大赛:A10-基于机器学习的分布式系统故障诊断系统——baseline(一)
|
调度
【SCI一区】考虑P2G和碳捕集设备的热电联供综合能源系统优化调度模型(Matlab代码实现)
【SCI一区】考虑P2G和碳捕集设备的热电联供综合能源系统优化调度模型(Matlab代码实现)
|
算法
天然气网络潮流计算模型研究(Matlab代码实现)
天然气网络潮流计算模型研究(Matlab代码实现)
135 0
|
存储 监控 并行计算
X86 vs ARM 架构同台竞技: 生物大数据大规模并行计算(如何将WGS全基因组计算成本降到1美元)
Sentieon DNAseq 实施的全基因组测序 (WGS) 二级分析流程与行业标准的 BWA-GATK 最佳实践流程结果相匹配,且运行速度提高了 5-20 倍。 Sentieon软件安装简单,开箱即用,并且提供了与ARM和x86指令集适配的版本。使30X WGS 数据样本在OCI 实例上的计算成本压缩到每个样本 1 美元以下,处理时间缩短到近一小时。
254 0
X86 vs ARM 架构同台竞技: 生物大数据大规模并行计算(如何将WGS全基因组计算成本降到1美元)
|
编解码 数据库
Google Earth Engine(GEE)——全球农田有机土壤碳和氮排放(1992-2018年度)数据集
Google Earth Engine(GEE)——全球农田有机土壤碳和氮排放(1992-2018年度)数据集
242 0
Google Earth Engine(GEE)——全球农田有机土壤碳和氮排放(1992-2018年度)数据集
|
关系型数据库 数据中心 ice
Google Earth Engine——AVHRR探路者5.3版海面温度数据集(PFV53)是由NOAA国家海洋学数据中心和迈阿密大学罗森斯蒂尔海洋与大气科学学院合作制作的全球每日两次的4公里数据
Google Earth Engine——AVHRR探路者5.3版海面温度数据集(PFV53)是由NOAA国家海洋学数据中心和迈阿密大学罗森斯蒂尔海洋与大气科学学院合作制作的全球每日两次的4公里数据
480 0
Google Earth Engine——AVHRR探路者5.3版海面温度数据集(PFV53)是由NOAA国家海洋学数据中心和迈阿密大学罗森斯蒂尔海洋与大气科学学院合作制作的全球每日两次的4公里数据
|
机器学习/深度学习 人工智能 编解码
微软行星云计算Planetary Computer——微软云平台的主要可视化APP(全球10米的最新土地覆盖,森林毁坏监测,生态系统监测,森林碳风险评估,AI加持的的土地覆盖制图)
微软行星云计算Planetary Computer——微软云平台的主要可视化APP(全球10米的最新土地覆盖,森林毁坏监测,生态系统监测,森林碳风险评估,AI加持的的土地覆盖制图)
371 0
微软行星云计算Planetary Computer——微软云平台的主要可视化APP(全球10米的最新土地覆盖,森林毁坏监测,生态系统监测,森林碳风险评估,AI加持的的土地覆盖制图)

热门文章

最新文章