气象海洋高性能计算机测评系统研究与实现

2012-01-05 06:44黄瑞芳刘俊铖鲍振华
成都信息工程大学学报 2012年2期
关键词:测试程序测试项目高性能

黄瑞芳, 刘俊铖, 鲍振华

(中国人民解放军61741部队信息中心,北京100094)

0 引言

高性能计算机(简称HPC)测评是高性能计算领域的核心技术和挑战性课题,应用于HPC设计生产、选型购置、应用维护全生命期,指导系统性能定位、应用优化、性能比较、性能验证和系统调优。气象海洋环境数值预报是气象水文保障的核心业务,其发展水平与高性能计算技术的发展和应用水平密切关联,是HPC的主要应用领域。从应用的角度来说,选择适合行业大型软件高效、可靠运行的HPC系统,既是保证核心业务能力有效发挥的必然要求,又是保护投资、发挥效益、降低成本开销的客观需要,因此,气象用户对行业高性能计算机测评有迫切需要。

1 气象海洋应用计算特征分析

气象海洋应用的计算特征包括:矩阵转置在内的全局通信、大I/O、高度并行、计算量随分辨率成指数增长、背景场和初试数据量大等特点,要求很高的综合系统性能。

1.1 全球中期数值天气预报模式

全球中期数值天气预报模式的谱方法计算内核发源于欧洲中期数值预报中心,模式在中国广泛应用,是国家和军队数值天气预报业务系统的核心模式。模式包含了典型的大气动力和热力过程,物理过程完善,大量使用快速傅立叶变换(FFT)、勒让德变换等典型算法。模式能够测试HPC运行全球谱模式和集合预报的能力。能够测试:

(1)HPC对中期预报核心模式的可移植性;

(2)HPC进行数据密集和通信密集计算的吞吐能力;

(3)HPC在容量计算时达到能力极限的持续计算能力;

(4)数学库支持和优化性能。

1.2 全球并行化海洋预报模式

POP(Parallel Ocean Processe)由美国洛斯阿拉莫斯国家试验室根据美国能源部气候改变预测计划开发,模式成功应用推进了美国在10年期和大尺度气候预测领域的技术进步。主要计算和通讯过程基于并行技术开发,具有较高并行效率,并行规模大,并行度可扩展至1万以上。模式能够测试HPC运行海洋数值预报的应用性能,能够测试:

(1)HPC的CPU多核计算性能。

(2)HPC计算和通信能力的均衡性。

(3)HPC的可扩展性。

(4)测试方对海洋模式应用开发和代码优化能力。

1.3 海陆气耦合气候模式CCSM3

CCSM3是美国发展的第三代耦合气候模式,包括完全相互作用的大气、海洋、海冰和陆面4个分量模式,通过耦合器相互交换数据。具体计算采用MPMD的并行方式,各个模块相互独立地运行,并周期性地与耦合器交换数据。模式代表大气、海洋、气候多圈层耦合的发展趋势,反映大通讯、大I/O应用的计算特征。其中各种模式组件的并行度不同,最大并行度有待确定。模式能够测试目标系统运行海洋、大气和陆面过程耦合预报的能力。

2 系统设计

气象海洋HPC测评系统设计的主要内容包括:建立测评体系、建立测试环境、选取测试集,构建测试模型、建立测评标准。

2.1 建立测评体系

建立HPC测评体系目的是分析并提取HPC关键功能和性能因素,建立科学客观的量化评估标准化体系,是构建测评系统的技术核心。评价HPC的主要因素包括软硬件的功能和性能,其中硬件方面因素有处理器的浮点处理能力、Cache大小、访存带宽和延迟、I/O能力以及通信的带宽和延迟等;软件方面因素有操作系统、编译器、作业系统、应用算法实现和性能优化能力[1-3]。硬件系统与软件应用的匹配程度也是影响HPC整体性能的关键因素。综合上述因素,建立在多维空间上能够表示应用特征和HPC特征,反映系统与应用之间区别、相似度的HPC测评体系。体系的基本结构如图1所示。

HPC性能和功能模型描述HPC提供硬件和软件计算资源的能力。应用与HPC匹配评价模型描述应用需求与HPC计算资源能力之间的匹配程度,模型定义应用与HPC的性能褶和方法以及HPC的评价标准。

2.2 建立测试环境

HPC和并行程序设计复杂性的提高,使影响气象海洋数值计算性能的因素越来越多。建立测试试验环境的目的是在不同配置的小规模HPC上运行应用系统,初步考察构成HPC各个要素对应用的性能影响,发现应用对HPC性能的需求,将众多复杂的因素聚焦到几个性能主成份上,明确测评目标。

测试试验环境的基本构成如图2所示。测试试验环境配置的方法如下:

(1)分析影响HPC性能的一般因素。

(2)选取当时业界具有代表性的配置确定基准测试环境中各主成份的取值。使用这些因素构造一个HPC设计矩阵。HPC设计矩阵的一个行向量代表一个真实可行的HPC配置。

图1 气象海洋HPC多维空间测评体系

2.3 选取测试集

测试集是测评系统的核心构件,其主要功能是作为测评的输入,考核HPC满足应用功能和性能需求的能力。测试集由测试程序、测试初始数据和基准测试结果组成。由于气象海洋应用程序规模大、结构复杂,采用程序特征分析方法进行分类,对气象海洋模式进行基于系统抽样的程序特征分析方法[4]:

(1)准备输入数据,确定运行应用的处理器规模;

(2)在基准测试试验环境上移植调试、运行,确定程序代码的跨平台移植难度、编译级优化潜力和算法级的代码优化潜力等,作为制定测试评分准则的重要技术参考;

(3)在基准测试试验环境上以不同输入规模、不同并行规模运行应用程序,考察应用的可扩展性,作为制定测试评分准则的重要技术参考;

(4)在基准测试试验环境上采用Intel trace Analyzer and Collector跟踪应用程序运行,获得性能跟踪数据;

(5)分析测试结果数据,通过提取关键参数或者绘图形成测试结果的正确性判定;

(6)通过分析提取的性能数据,确定应用程序的浮点操作、访存、通信、I/O的性能需求,作为制定测试评分准则的重要技术参考;

(7)综合上述分析过程,建立一个多维向量表示应用特征。

图2 测试试验环境

2.4 构建测试模型

测试模型用于提取各类HPC系统的性能主成份和功能特征指标,建立HPC计算资源能力表示模式,为气象海洋应用与HPC之间的性能和计算[5]提供依据。测试模型由测试项目和测试方法两部分构成。其中测试项目定义测试集中每个测试程序的输入约束、过程约束、目标约束,在不同约束下,每个测试程序生成多个测试实例。测试方法定义测试过程中必须遵循的一般方法。

2.5 建立测评标准

测评标准以性能瓶颈和测评重点为目的,以测试数据为基础。采用统计分析技术,实现HPC计算资源能力和应用特征之间从局部到整体的褶和计算,建立对测试结果进行定性和定量分析评价的机制[6]。主要包含以下几个方面:

(1)测试完成情况分析包括测试方法的正确性、测试结果的正确性和优化程度。

(2)系统性能分析给出各种机型的单CPU性能、单节点性能、内存带宽、互连带宽、IO带宽等方面的系统性能对比结果。

(3)应用性能分析建立应用程序运行在各种机型上的持续性能、并行效率与应用程序的计算资源需求之间的映射关系,并结合机型体系结构、计算、IO以及互连性能和系统可扩展性褶和计算出目标系统配置规模;通过对比测试单位的移植能力、优化能力,给出技术先进性、技术支持实力等方面的结论。

(4)系统功能分析给出各种机型的系统测试功能对比结果,包括作业管理能力、资源调度能力、Checkpoint/Restart功能和性能等方面。

图3 气象海洋高性能计算机测评系统总体结构图

3 高性能计算机测评系统实现

3.1 系统组成

气象海洋HPC测评系统由:测试集、测试模型、测评标准、测评管理软件组成,总体结构如图3所示。

(1)测试集

测试程序采用基于系统抽样的程序特征分析方法和距离函数的应用分类方法从气象海洋典型数值计算模式以及国际通用基准测试程序中选择得出,包括气象、海洋、海陆气耦合模式程序和基准测试程序,作为测试项目的基本构件;测试初始数据包为测试程序运行提供具备样本功能的初始场和边界条件;基准测试结果是在测评方高性能主机上采用测试初始数据包运行测试程序获得的运行结果,包括计算结果和性能分析结果,用于测评分析验证。

(2)测评模型

测试模型由测试项目和测试方法两部分构成,每组测试项目伴有相应的数据采集模块。测试项目包括气象海洋应用性能测试项目、计算系统管理功能测试项目和基准测试项目。

(3)测评标准

主要在测试真实性、测试方法正确性、测试结果正确性验证的基础上,对优化程度、性能和功能进行分析,综合得出具体的测评标准。

(4)测评管理软件

测评管理软件全实现测试和评标数据采集、数据分析、模型管理、文档管理、系统管理和报表生成。

3.2 系统软硬件环境

测评系统的硬件环境由测评高性能计算主机、测评管理主机、测评数据服务器、文件管理主机和高性能计算网络组成。系统部署结构如图4所示。

图4 气象海洋高性能计算机测评系统部署结构

4 结束语

系统先后在国内4大HPC厂商的6类主流HPC系统平台上完成了14个测试项目的分析和比对,分别就平台编译性能、单节点性能、并行效率和可扩展能力、系统单项性能、满足特定应用的配置规模和持续计算性能、资源管理和作业调度能力、系统吞吐率及对集合预报的支持能力给出了客观评价,为相关行业高性能计算系统设计、生产、选型、采购、性能调优和运行维护提供了技术参考。后期将进一步扩充相关测试集、优化测评标准,构建可扩展测试模型,为更多领域的高性能计算系统设计和生产提供技术参考。

[1] A Snavely,N Wolter,L Carrington.Modeling Application Performance by Convolving Machine Signatures with Application Profiles[J].IEEE 4th Annual Workshop on Workload Characterization,2001,(2).

[2] D Ofelt,J L Hennessy.Efficient Performance Prediction for Modern Microprocessors[M].SIGMETRICS,2000:229-239.

[3] D J Kerbyson,H Alme,A Hoisie,et al.Predictive Performance and Scalability Modeling of a Large-Scale Application[M].Supercomputing,2001.

[4] A Snavely,N Wolter,L Carrington,et al.A Framework to Enable Performance Modeling and Prediction[M].Supercomputing,2002.

[5] L Carrington,N Wolter,A Snavely.A Framework for Application Performance Prediction to Enable Scalability Understanding[M].Scaling to New Heights Workshop,Pittsburgh,2002.

[6] Gabriel Marin,John Mellor Crummey.Cross Architecture Performance Predictions for Scientific Applications Using Parameterized Models[M].SIGMET RICS performance,New York,2004.

猜你喜欢
测试程序测试项目高性能
我国金融科技“监管沙盒”测试项目准入标准制度研究
篮球半场往返运球上篮的训练方法——体育中考篮球测试项目训练心得
基于Castle型机械手的三温量产测试平台实现
手机APP交互界面人因适合性测试程序的设计与实现
一款高性能BGO探测器的研发
高性能砼在桥梁中的应用
电气自动化控制设备可靠性测试探讨
SATA推出全新高性能喷枪SATAjet 5000 B
高性能可变进气岐管降低二氧化碳排放
《国家学生体质健康标准》测试项目修订研究