高性能计算门户开发与应用研究
高性能计算门户开发与应用研究
Research on Development and Application of High Performance Computing Portal
作者: 任柯燕中国航空研究院 航空数值模拟技术研究应用中心,北京 100012通讯作者. Tel.: 13683037560 E-mail: renky@cae.ac.cn任柯燕(1982-)女,博士,工程师。主要研究方向:高性能计算,海量数据后处理,软件开发。Tel: 13683037650E-mail: renky@cae.ac.cnChinese Aeronautical Establishment, Numerical Simulation Center, Beijing 10012, ChinaCorresponding author. Tel. : 13683037650 E-mail: renky@cae.ac.cn
Author: REN Keyan
关键词:高性能计算;作业调度;LSF;计算资源管理;计算数据管理
Keywords:high performance computing;job scheduling;LSF;computing resource management;computing data management
摘要:为实现高性能计算中心的计算资源、软件资源、数据资源的有效共享和高效使用,提高研究软件的生产率及科研技术人员的工作效率,有助于用户访问并使用计算中心软硬件资源,设计并开发了高性能计算门户(HPCP)。HPCP将计算流体力学、计算结构力学和计算声学等多种计算软件集成在一个统一便捷的用户界面中,提供一个多学科交叉的高性能计算服务平台。基于LSF集群作业调度基本策略,开发以用户优先级、用户作业占用资源时间和队列作业派遣吞吐量等方面为衡量标准的公平分享调度策略,对于高优先级任务采用抢占调度策略。将在优化作业调度策略及数据搜集、提炼、分析等方面对HPCP开展深入研究,以构建精准、完善的计算及数据服务。
Abstract:>In order to effectively share and conveniently use high performance center’s computing resource, software resource and data resource, improve software productivity and technician work efficiency, help users to access and use the computing center hardware and software resources, we designed and developed the high performance computing portal(HPCP). HPCP is a unified convenient user interface by integrates Computational Fluid Dynamic, Computational Structural Mechanics, Computational Acoustics, etc. It is also a multidisciplinary high performance computing services platform. By designing and developing cluster job scheduling based on LSF, HPCP develop fairshare strategy by measuring user priority, user operation occupying resource time and queue operation dispatch and throughput, etc. HPCP will next carry out further research on data collection, refinement, analysis for the purpose of building more accurate, so as to provide safe, standard, credible, efficient data support platform.
引用格式:REN Keyan. Research on the development and application of High Performance Computing Portal[J]. Aeronautical Science & Technology, 2014,25(08):69-73. 任柯燕. 高性能计算门户开发与应用研究[J]. 航空科学技术, 2014, 25(08): 69-73.
为满足不同地域用户方便、高效地使用高性能计算资源,提高研究软件的生产效率及科研技术人员的工作效率,开发了基于浏览器/服务器(Browser/Server)架构的高性能计算门户(High Performance Computing Portal,HPCP)对高性能计算中心进行访问。HPCP集成的航空数值模拟软件包括CFD软件体系、计算结构力学软件、计算电磁学软件、计算声学软件、飞机设计及多学科优化软件。采用作业调度软件LSF管理集群内的数据及计算资源,但其基本调度策略对于拥有大量不同优先级用户和队列的高性能计算平台来说,分配给用户或队列的资源不够均衡。本文设计以用户优先级、用户所有作业占用资源时间和队列作业派遣吞吐量等方面为衡量标准的调度策略,对于高优先级任务采用抢占调度策略,以满足不同用户需求。
1 系统架构
高性能计算中心是一个集中的面向行业的高性能计算服务平台。HPCP采用IBM Platform LSF对整个集群内的资源进行统一管理,所有用户均可使用浏览器通过Portal提交和管理计算作业。用户提交作业时,作业相关数据将通过Portal上传到临时存储区,用户作业一旦计算完成,相关的数据将立即自动转移到各用户对应的文件服务器上。
HPCP架构如图1所示。Portal为集群用户和管理员提供灵活的、以应用程序为中心且易于使用和管理的界面。通过作业调度系统可管理分布式计算机环境,加快处理高性能计算工作负载,系统提供一套全面智能化调度功能,以确保将合适的资源自动分配给适当的作业,最大限度地发挥应用程序的效能和效率。许可证管理可以按工作负载、用户和项目,设置使用优先级,保证最佳使用状态。报表分析可以统计计算资源使用情况。同时,HPCP可使用户间保持相互隔离,确保不同单位的数据和作业安全。
HPCP可实现的主要功能包括:
(1)作业及数据管理。按照作业状态,可实现作业输出、暂停、恢复、重新调度、重新提交等功能。计算完成的数据在数据列表中可正确显示,可实现数据上传、下载、解压、删除等操作。
(2)用户管理。将各单位用户分组并定义到LSF的用户组配置文件中,通过角色和权限设定限定用户使用软件资源的范围,当用户登录后,LSF可以识别用户的单位信息。
(3)系统资源监控和分析。可实现资源负载等统计。
图1 高性能计算门户架构 Fig.1 Framework of HPCP
2 HPCP集群作业调度设计与开发
2.1 LSF基本作业调度策略
作业调度策略是作业管理系统的核心[1]。LSF的主要功能是在集群(Cluster)环境下,应用不同调度策略为不同优先级用户和队列分配计算资源。LSF提供了多种作业调度策略,包含先来先服务(FCFS)、抢占调度(Preemptive)、独占调度(Exclusive)、公平共享调度(Fairshare)等[3]:
(1) FCFS:选择提交时间早的作业进行调度。
(2) Preemptive:高优先级的作业抢占正在运行的低优先级作业进行调度。
(3) Exclusive:使用机器上的全部资源计算独占作业,直至算完为止。
(4) Fairshare:在队列中规定不同用户对运算资源的使用份额(即不同用户的优先级排序),保障运算资源被公平合理的使用。动态优先级计算如式(1)所示。
其中,CPU_TIME_FACTOR、RUN_TIME_FACTOR、RUN_JOB_FACTOR是LSF内部变量,分别有一个固定值,一般不修改;number_shares为该用户被分配的运算资源份额;cpu_time为该用户的作业占用CPU时间的总和;run_time为该用户的作业运行时间的总和;job_slots为该用户的作业占用CPU的个数。可见,用户优先级与作业运行时间及正在运行的作业数成反比。利用该公式可算出用户优先级,在计算资源有限的情况下,选择多个队列上优先级最高的用户的作业进行调度[2]。
2.2 HPCP作业调度策略
在FCFS、Preemptive、Exclusive调度策略下容易出现垄断资源的情况。
因此,HPCP设计并开发以用户优先级、用户所有作业占用资源时间和队列作业派遣吞吐量等方面为衡量标准的Fairshare公平分享调度策略,对于需要进行高优先级任务需要抢占系统资源情况,采用Preemption调度策略。按用户配置一个普通优先级队列和一个高优先级队列,高优先级队列作业可抢占低优先级队列作业,指定高优先级队列的用户,可实现对某些特殊情况需要抢占资源的任务有限制地运行。设计在抢占资源时挂起低优先级作业,待高优先级作业结束后再唤醒。
实现作业调度策略先定义主机(Host)、用户(User)、队列(Queue)[4],在LSF_CONFDIR目录下配置:
• LSF_CONFDIR/lsb.users
• LSB_CONFDIR/cluster_name/configdir/lsb.hosts
• LSB_CONFDIR/cluster_name/configdir/lsb.queues
• LSB_CONFDIR/cluster_name/configdir/lsb.resources
用户:根据应用单位的具体情况及用户所在部门,创建相应的用户组。通过用户组嵌套实现多级组织结构,通过设置用户组的使用权限和用户组间份额进行可用资源控制。lsb.users配置示例如下:


主机:按照操作系统类型和物理位置(不同共享存储系统)划分为不同机器组,机器组不与用户单位挂勾,各单位均可使用。同时,对于物理位置不同的机器进行分组,保证作业不会跨区分配。lsb.hosts配置示例如下:

队列:使用高优先级队列,结合抢占调度策略,保证运行时间较短的作业优先调度。lsb.queues配置示例如下:


对于一些应用软件若有特殊配置要求,可在lsb.applications中定义。如FLUENT有特殊执行要求,lsb.applications配置示例如下:

系统管理员还可以根据机器的具体使用情况,对主机进行动态的在线调整。调整时不会对正在运行的作业产生任何影响,因此无须通知用户。
3 软件集成开发
3.1 HPCP软件服务
软件服务包括各个应用领域的软件,还包括了作业及数据管理、应用支持系统,如图2所示。集成的航空数值模拟软件包括CFD软件体系、计算结构力学软件、计算电磁学软件、计算声学软件、飞机设计及多学科优化软件。CFD软件体系包括前置处理和网格生成软件ICEM CFD、Pointwise、GridPro等;流动计算软件包括自研CFD软件、Fluent、CFX、CFD++、NUMECA等;后置处理和可视化软件包括Ensight、Tecplot、ParaView/VisI;还包括计算结构力学软件Abaqus;计算声学软件ACTRAN;飞机设计及多学科优化软件包括CATIA、CAA、Sysware、Optimus等;应用支持软件IBM Rational、Microsoft/Intel、C/C++/Fortran Studio等;另外,还包括HPCP专业技术论坛及AVICFD数据库和知识库。
整个高性能计算服务平台通过防火墙进行封装,仅在防火墙上开发特定端口和服务,保证服务平台的安全性。
图2 HPCP软件服务 Fig.2 Service of HPCP software
3.2 软件集成及开发
应用软件集成的目的是使用户能够通过web portal提交作业,然后通过LSF对作业进行调度、管理和取回结果。
集成应用软件步骤如下:
(1)建立应用程序的模板文件(xml文件)和配置文件(cmd文件)。
(2)编辑LSF队列配置文件lsb.queues,针对该应用程序添加作业提交队列。
(3)编辑lsb.resources,增加对该应用程序作业队列总作业数的限制(可选)。
(4)编辑lsb.applications,增加该应用程序的设置。
(5)编辑LSF与web portal的接口程序,创建应用程序的实际作业提交命令。
(6)创建针对该应用程序的job_starter文件,设置作业的运行环境(可选)。
(7)当程序执行完成后,可通过开发postexec程序实现需要的后处理过程,例如清除临时文件、汇总结果、将结果打包等(可选)。
(8)发布该应用程序,用户便可通过web portal来提交应用程序作业。
3.3 软件集成实例及应用
以ANSYS公司的通用CFD计算软件CFX为例,集成CFX的提交计算流程图如图3所示,集成CFX的前(后)置处理流程图如图4所示。
CFX软件分为CFX数据准备、CFX计算作业提交及CFX后处理3个模块。CFX计算作业提交有两种方式:在程序参数中,Mdef选择“是”则可在一个文件中执行几个串行计算作业,将准备好的*.def文件在本地或者远程提交;选择“否”则仅提交一个计算作业,将准备好的*.Mdef及*.cfg文件在本地或者远程提交。前处理及作业提交界面如图5所示。
图3 CFX软件前(后)置处理集成 Fig.3 Configure CFX preprocession (postprocession)
图4 CFX软件提交计算集成 Fig.4 Configure submit CFX job
图5 CFX前处理及计算作业提交 Fig.5 CFX preprocession and submit CFX job
4 应用展望
高性能计算中心目前的主要任务是科研及工程计算,通过资源管理和作业调度系统运行,将对面向不同的调度目标如负载均衡、服务质量、最优跨度、经济原则、系统的可扩展性、移植性等进行深入研究,设计开发有针对性的作业调度策略,以提高科研技术人员的工作效率。
HPCP集成的CFD软件体系可计算低速、亚声速、跨声速以及结构或非结构网格,计算效率依赖于CPU并行数;计算结构力学软件基于有限元,能处理材料非线性、几何非线性和状态非线性等多类问题;计算声学软件有丰富的单元库、材料库、边界条件、求解配置和求解器;飞机设计及多学科优化软件实现仿真流程包括实验设计、单/多目标优化、鲁棒性/可靠性设计等流程自动化,与ABAQUS、FLUENT、CFX等计算软件配合使用。计算中心投入运行后,多学科软件将产生海量数据。将对计算效率、结果数据搜集、提炼、分析等方面开展深入研究,自动生成格式化的分析图表、性能曲线、自封闭仿真对比报告等功能,以提高研究软件的生产率[5]。
5 结论
本文主要介绍HPCP的架构、集群间作业调度策略的设计与开发、软件集成开发,并对HPCP如何在技术上提高研究软件的生产率及科研技术人员的工作效率进行展望。考虑到数值计算的新需求、数据的高效管理以及计算资源的聚合与共享等需求,未来计算中心将在作业调度策略以及对计算产生的大数据进行多维度、多样化分析,以构建精准、完善的计算及数据服务,为用户提供高效、标准、可信的应用支持平台。
参考文献
[1] 何林. 面向网格计算的多集群间作业调度策略的设计与实现[D]. 哈尔滨:哈尔滨工业大学硕士论文,2012.
HE Lin. The design and implementation of scheduling policy of multi-cluster oriented grid computing[D]. Harbin Institute of Technology, 2012. (in Chinese)
[2] IBM Platform LSF. Administering IBM Platform LSF[M]. 2012:369-499.
[3] IBM Platform License Scheduler. Using IBM Platform License Scheduler[M]. 2007.
[4] 亓楠. 网格计算平台中作业公平分享调度模块的设计与实现[D]. 哈尔滨:哈尔滨工业大学硕士论文,2010.
QI Nan. The design and implementation of fairshare scheduling module in grid platform[D]. Harbin Institute of Technology, 2010.(in Chinese)
[5] 任柯燕, 白文. CFD共用软件体系AVICFD建设[C]. 第16届全国计算流体力学会议. 厦门, 2014.
REN Keyan, BAI Wen. CFD software construct of AVICFD[C] // The 16th National Conference on Computational Fluid Mechanics. Xiamen, 2014. (in Chinese)