APP下载

高性能计算系统性能评测方法及关键问题分析

2016-05-30董国平

科技资讯 2016年20期

董国平

摘 要:在实际工作中,通常不同的应用需求决定高性能计算机的峰值性能可用的属性。订购一个高性能计算机时,大家应避免被其峰值性能误导而忽略了实际应用中的性能需求。在这篇文章中,笔者介绍了HPC(高性能计算)系统评价理论和评价方法并根据气象应用的特点,设计了HPC系统的排序评价方案。最后,给出了具体的评价结果并指出这些因素如何影响工作性能。

关键词:高性能计算 加速比 性能评价

中图分类号:TP31 文献标识码:A 文章编号:1672-3791(2016)07(b)-0014-03

不同应用领域的科学程序使用的算法不同,对高性能计算系统的要求也有所不同。比如,通信密集型的算法对机器的网络性能要求较高,计算密集型的算法对处理器性能要求较高。面对众多的高性能计算系统,如何评测和选择适合气象数值天气预报业务应用的高性能计算系统是必须解决的问题。

1 HPC系统性能评测指标

在评测高性能计算系统时,有以下4种基本性能指标[1] :系统规模、系统峰值、网络带宽和网络延迟,表1给出了高性能计算系统基本性能参数。对于高性能计算应用的性能评价,则还有计算规模、计算时间、计算效率、并行加速比等评价指标。

高性能计算机系统的基本参数指标,往往回答不了用户关心的问题。而且,由于处理器结构、存储层次结构、互联网络拓扑等的差异,系统规模、系统峰值、网络带宽与延迟等单一性能指标也确实难以表征系统的综合性能,因此需要进一步作高性能计算系统的综合性能评测。

2 HPC系统性能评测方法

高性能计算系统性能评测方法主要包括基准测试和实际工作负载驱动测试两类。基准测试[2]是指利用业界开发的多种基准测试程序来测试高性能计算系统的性能指标,一般都是针对系统某方面或某分系统性能进行测试,反映系统某一特定方面的性能指标。基准测试程序是用户理解系统性能比较直接的方式。作基准测试程序时,还需要考虑数据集以及运行规模等方面的问题。

在性能评测中实际工作负载驱动测试也是一个极其重要的测评指标。实际工作负载驱动测试[3]是指采用用户自己的业务应用程序进行实际的测试。通常高性能计算机的峰值性能与实际应用/实测可获得的性能仍然存在很大的差异。峰值性能是指在理想情况下计算机系统可获得的最高理论性能值,它不能反应系统的实际性能。在性能测评中实际工作负载驱动测试是一个极其重要的测评指标。

3 系统性能评测方案设计

气象数值预报是高性能计算应用的一个传统领域,复杂的气候三维模型对高性能计算有着巨大需求。省级气象行业的主流数值预报模式的类型主要有中尺度非静力格点模式MM5(Mesoscale Model5)、WRF(Weather Research and Forecasting)、中国新一代数值预报模式GRAPES(Global/Regional Assimilation and Prediction Enhanced System)以及区域气候模式RegCM等等。这些气象数值预报模式的特点是计算量巨大、通讯极为密集、实时性强,因此在测试方案设计上,需要重点关注并测试高性能计算机系统的高性能浮点处理能力、高性能网络环境和系统的高稳定性这3个主要方面。

在建设气象高性能计算系统过程中,采用了以实际数值预报模式测试为主、基准测试为辅的综合测试方案。充分了解气象应用领域对高性能计算系统的需求,利用实际工作应用程序进行测试更有针对性,更具实用价值,为气象部门购买高性能计算机系统提供依据。各项测试分为非优化测试和优化测试。非优化测试便于考察集群对原代码的适应性。优化测试可以让厂家充分展示机器潜在性能的机会,在测试厂家的技术实力的同时,也获得厂家的优化代码,以便有效地构建满足特定应用需求的高性能计算机系统。

气象高性能计算系统测评方案具体分为应用测试、基准测试、功能测试和测试题4个部分。通过对两个气候和气象预报模式的测试,来验证和确定厂家的高性能计算机是否适合气象数值预报目标系统的性能规模和内存配置;利用基准测试程序来测试系统的相关性能指标,如单CPU性能、I/O速度、结点互连网速度、通信延迟、内存带宽等等。

4 系统性能评测结果分析

4.1 测量时间分析

时间是高性能计算机性能测量的主要标准。测量某一任务所花的全部时间称响应时间。响应时间[4]也称墙钟时间或周转时间。响应时间=CPU时间(用户+系统)+ I/O时间+通信时间。一个程序的CPU时间包含用户CPU时间(执行程序的时间)和系统CPU时间(操作系统的开销)。系统性能对应于响应时间,而CPU性能对应于用户CPU时间。

从实际业务运行时间与峰值速度的比较图1中可以看到:高性能计算机的峰值性能与业务实际应用可获得的性能存在较大的差异。如图1中所示,公司B的HPC系统运行提供的实际业务应用模式所需的墙钟时间是最少的,但是它的理论峰值速度却不是最高的。相反,公司C的理论峰值速度很高,但是运行实际业务程序所需的时间却较长。

针对这个问题,笔者对应用程序进行了深入分析。应用程序中选取了有代表性的国家气象局新一代数值气象预报系统GRAPES程序为例进行分析。图2和图3是对GRAPES程序的点对点通信分析的结果,分别描述了消息大小分布和消息目的进程分布的情况。通过对应用的通信模式进行分析,可以发现,GRAPES程序中点对点通信的消息大小集中在100 KB到1 MB之间,并且0号进程与所有的进程进行通信,GRAPES的通信操作较频繁,说明这个程序对系统的通信性能要求较高。

公司B的HPC体系结构,每个节点都是16路的SMP架构。所以对于Graps、WRF等气象应用模式,都可以采用MPI+OpenMP的方式,即在机群系统中,节点和节点的通讯采用MPI的方式,而每个节点内部进程的通讯方式则采用OpenMP的方式进行。这样,减少了进程间通信的时间,从而获得了更高的应用性能。通过实测表明,特别是在测试硬件规模增大时,其性能优势越发明显。而公司C的HPC配置是每个节点都是8路,采用的是单纯MPI的方式,即所有进程间的通讯都是采用消息传递的方式(即MPI方式)进行。因此,系统的响应时间较公司B的慢。所以,大家在定购高性能计算机时要避免被所宣传的峰值性能误导而忽略实际可获得的应用性能。

4.2 加速比分析

加速比是并行处理系统性能的主要评测指标。理想的加速比是线性的,但实际的加速比则是逐渐偏低于线性值。理想的应用程序获得的效率与系统规模无关,能保持恒定值。但实际的应用程序获得的效率是随着规模的增大而逐渐降低,不能保持恒定。

笔者对涉及可扩展性测试的项目逐项绘制加速比效率图。从中可以直观地发现在高性能计算机并行性能方面,各高性能计算机产品之间存在一定的差距。图4是测试WRF气象数值预报模式四重嵌套时各公司HPC系统的加速比。从中可以发现,公司A的可扩展性最好。公司C的可扩展性较差,到320以上进程时加速比就没有提高,达不到测试要求。因此,加速比性能指标仍然是HPC系统性能评价的重要指标。

4.3 配置分析

在规定时间内运行完给定程序可以测到所需的最小系统配置。对于运行业务模式的业务系统,配置分析很重要。配置值可用于确定采购的系统规模、估算或推算价格、硬件运行的能耗。

4.4 管理软件效率分析

在测试中,有些系统并没有配备有效的管理软件功能(例如断点重启和分时调度功能),而有些系统配备了但开销很大,效率较低。只有了解管理软件/工具的效率,才能更有效地使用它们。因此,要计算出用于管理开销时间与程序总运行时间的比值,即管理软件开销比率。随着高性能计算机的不断发展,系统的可靠性、易管理性也将逐渐成为衡量并行计算机的重要指标。

5 结语

对应用程序进行分析能够让大家了解该应用领域的程序特点,了解程序对系统各部件的不同需求,为用户评测和购买高性能计算机系统提供依据。因此,对选取的典型应用程序进行特征分析是进行高性能计算机性能评测技术的一个关键步骤。

在气象应用领域,制定以实际预报模式为主、基准测试为辅的综合测试方法,并把这种综合的测试方法用在气象领域的高性能计算机的引进中。在技术上,测试结果用以确定招标的技术参数、机器的规模;在经济上,能使人们用最少的经费购置到最合适的系统。实践经验告诉人们,高性能计算的性能指标用实际应用测试是最真实、可靠,最反映实际需求也最具有说服力的。高性能计算系统的订购决策应该以是否满足用户需求为最重要的标准。

参考文献

[1] Wang Li,Bai Xin. The Design and Performance Analysis for A Real-time Cluster System [J].Computer Engineering and Applications,2006,43(18):120-122.

[2] T H Dunigan, M R Fahey, JB White. et al.Early Evaluation of the Cray X1 [C]//Supercomputing,2003ACM/IEEE Conference.2003.

[3] Hong Wen-dong.High Performance Computer Development and Meteorological Applications [J].Computer Engineering and Applications,2004,40(5):32-35.

[4] Yin Xin-chun, Xie Li. Strategy in Choosing the best number of processors [J].Computer Applications,2003,4(23):14-15.

[5] Hong Wen-dong, Tian Hao. Design on Application performance Evaluation of HPC System [J].Computer Engineering and Applications,2004(34):57-67.