盛乐标,游伟倩,周庆林
(南京大学 高性能计算中心,江苏 南京 210093)
南京大学高性能计算中心[1]是在南京大学“985工程”的支持下于2010年3月正式成立的。近年来,随着计算机技术和计算方法的发展,物理、化学、生物、大气、天文等学科对计算资源有着迫切需求[2-5],国内多所高校和科研院所纷纷开始采购大型的高性能计算集群[6-12],南京大学高性能计算中心正是在这样的背景下成立的。通过成立高性能计算中心,学校可以集中采购大型的高性能计算集群,为校内的教师、学生以及校外的科研工作者提供高质量的计算服务,对支援地方科技发展和经济建设具有积极的作用。南京大学是较早成立高性能计算中心的高校,建成后成为国内高校超算中心的示范单位。在成立3年来,多次接待来自国内高校、企事业单位以及政府部门的参观访问。本文将着重介绍南京大学高性能计算中心的建设经验与探索过程。
1999年,南京大学的几位中科院院士出于对科学计算的需求,提出南京大学应该有一台全校共享的大型计算机为学校的科研提供服务,并得到了学校的支持,在2000年的“985工程”一期项目中投资86万美元购置了64颗CPU的SGI Origin 3800CCNUMA架构的共享内存计算机,并由天文系代管。至2007年该计算机共为南京大学的物理、化学、大气、天文、材料、电子等各院系提供了280万CPU小时的计算服务。
随着计算需求的不断增加,现有的计算能力已经远远不能满足需求,迫切需要增加计算资源。此时,部分经费充足的教师开始自己购置小型计算机集群,但是全校的计算资源需求缺口仍然很大。2005年,学校在“985工程”二期计划中决定,再拨款2000万元,购置和更新全校所需的大型共享计算设备,为全校教师提供更强大的计算能力和更多的计算资源。
为了更好地管理和使用这些大型计算设备,学校同时决定筹备南京大学高性能计算中心,全面负责对这些大型共享计算设备进行管理、维护和运营。2010年3月,南京大学高性能计算中心正式挂牌成立,其定位是南京大学高性能计算的公共服务平台为全校各相关学科的教师和学生提供高性能科学计算服务,为学校提供人才培养和科技创新环境。
在成立高性能计算中心的论证讨论过程中,专家组一致认为作为一个大型的高性能计算中心,需要提供2种类型的计算设备:一种为共享内存型的SMP或CCNUMA架构的小型机;另一类为性价比较高的机架式或刀片式的大规模集群计算机。根据当时计算机的架构和性能估算,预计总计算能力理论浮点峰值可达10万亿次/秒以上。
由于适合大型计算集群的机房场地一直没有落实,但计算资源的需求又十分突出,因此2007年学校先期购置了共享内存型(CCNUMA)架构的小型计算机SGI Altix 4700,主要配置包括:Intel公司的安腾II双核处理器(18兆缓存、1.6GHz主频、256核)、512 GB内存和4TB存储。操作系统采用SUSE Linux Version 10,作业管理调度系统采用PBS-Pro,该系统于2007年11月投入运行。
2009年2月落实了机房场地后,在前期专家组的大量调研、测试和对各院系已有小型刀片集群案例进行深入了解的基础上,大家一致认为大型刀片集群系统技术已经成熟,性能稳定可靠,可作为学校第2批采购的首选方案。同年3月,IBM公司以大型刀片系统Blade Center HS22中标,理论计算峰值34万亿次/秒。该系统主要包括以下产品:402台IBM HS22刀片构成的计算节点,10台HS22刀片登录节点,30台刀片机箱,3台机架式X3650M2管理和作业调度节点,1台X3550集群管理监控节点,20台X3650并行存储节点(容量54TB),2台Voltaire 288口20Gb 4XInfiniband交换机,4台4口万兆上行48口BNT公司的千兆交换机组成的千兆无阻塞作业调度系统和管理网络,1台容量128TB的IBM DS5300SAN架构光纤共享存储系统,全系统各节点采用RedHat Linux 5.3操作系统,系统作业调度管理软件采用Platform公司的LSF 7.0商用软件,3218个许可证。整个高性能计算中心计算集群系统总体框架图见图1。
图1 南京大学高性能计算中心计算集群系统总体框架图
该套系统在2009年10月的Linpack测试中,用OpenMP和Intel MPI混合编程模式,取得了并行效率91.92%的佳绩,Linpack实际计算能力达到了31.3万亿次/秒,在当年的国际计算机计算能力TOP500排行榜中列第203位,在中国高性能计算机性能TOP100排行榜中列第7位,在全国高校中位列第1位。
为了对高性能计算中心进行管理、制定相关政策、进行重大决策等,学校成立了高性能计算中心管理委员会,负责对高性能计算中心各方面的事务进行管理。管理委员会设主任1名,副主任3名,其他委员则由学校各个相关学科的教师担任,委员人数共13位。管理委员会每年对高性能计算中心工作情况进行审核,并为下一年度的发展制定方向。
系统管理的好坏是决定高性能计算中心设备能否高质量稳定运营的主要方面。因此,系统管理人员的素质,对高性能计算中心的发展起着重要的作用。南京大学高性能计算中心有2名专职系统管理人员,都具有博士学位,除了负责对机房内设备的日常维护外,还在高性能计算中心的多个方面发挥着积极作用。他们的日常工作内容包括:每天例行检查机器的运行情况,并对设备运行状况作记录;发现硬件故障的,收集机器故障码及运行日志,不能自行处理的及时报修;设备修复及更换后彻查、验收机器的修复情况,检查机器是否恢复正常等。因为大型计算集群的复杂性,管理的难度也相应提高,系统管理人员必须具有较强的编程能力,能够自己编写脚本、软件来实现一些定制化的管理功能。
除了要熟悉大型集群的管理之外,系统管理人员还需对物理、化学、生物等与并行计算相关的学科知识有一定的了解,熟练掌握1~2个学科的大型科学计算软件。因为高性能计算集群主要是为需要高密度并行科学计算的教师和科研人员服务的,涉及到了各学科大型并行软件的应用,如果没有足够的物理、化学等背景知识,那么系统管理人员最多只是将集群维持正常运行,对集群的性能提升、学科应用软件的技术支持等都会力不从心,在与教师学生等关于应用软件的交流沟通中也可能出现障碍。这也是高性能计算中心区别于一般的计算中心的一个方面。
根据高性能计算中心实际运营的情况,我们发现使用高性能计算集群频率最高的人员是学校相关课题组的研究生。然而,目前在国内绝大多数院校非计算机专业的本科生和研究生培养计划中,都没有开设高性能计算或者并行计算方面的课程,这就导致了很多研究生在开始从事计算方面的课题需要使用大型计算集群时遇到困难。为了普及高性能计算的基本知识、提高学生使用高性能计算机的兴趣与能力、培养未来使用和熟悉高性能计算的后备军,高性能计算中心决定在南京大学开设了“高性能计算”课程。该课程讲授内容包括:Linux基本知识、Shell脚本编程、MPI编程介绍和高性能计算在各个学科中的应用等。这门课开课以后,反响很好。许多学生修了这门课以后,很快就能学以致用,将所学知识结合到研究课题中去,进行并行编程及计算。由此可见,在高校中开设高性能计算课程十分必要。
收费还是免费?这也是高性能计算中心建立之初专家组讨论得较多的话题之一。支持免费的一方认为学校统一出资建设的大型共享计算设施,应该为全校有需要的教师提供免费的科学计算服务;支持收费的一方认为完全的免费也会带来大量的浪费,因为一旦全部计算资源免费,很多教师或学生在使用计算资源时将没有节制,从而带来计算集群成果产出效率的下降。最后,通过综合这两方面的意见,高性能计算中心决定采取象征性的收费政策,即:计算费0.10元/核·小时,硬盘占用费0.01元/GB·天(每位用户可免费使用100GB)。对于计算量特别大的用户,高性能计算中心还提供了两档包年费方案:
(1)256核、1TB硬盘容量:校内用户包年费用为10万元人民币/年;
(2)128核、1TB硬盘容量:校内用户包年费用为5万元人民币/年。
为了鼓励用户作出更多高水平的研究工作,更高效地使用计算资源,高性能计算中心还另外制定了论文奖励措施。对发表高水平论文的用户可以奖励一个计算账号免费使用高性能计算中心计算集群1~2年,无机时限制,但CPU核数上限限制为128核;对发表一级学科顶级期刊论文和其他SCI论文的,按照文章质量和数量,也分别奖励一定的机时。
南京大学高性能计算中心的建立,使大型计算机集群的管理更为专业和细致,缓解了南京大学以及地方的科研工作者计算资源短缺的问题,为他们提供了一个稳定、可靠的计算环境。高性能计算机集群的良好运行和高性能计算中心完善细致的服务,提高了南京大学的科技成果产出效率,使得南京大学在计算方面的科学研究进一步与世界领先实验室接轨。
(References)
[1]南京大学.高性能计算中心主页[EB/OL].[2013-3-1].http://hpcc.nju.edu.cn.
[2]周毓麟,沈隆钧.高性能计算的应用及战略地位[J].中国科学院院刊,1999(3):184-187.
[3]张军华,臧胜涛,单联瑜,等.高性能计算的发展现状及趋势[J].石油地球物理勘探,2010,45(6):918-925.
[4]赵毅,朱鹏,迟学斌,等.浅析高性能计算应用的需求与发展[J].计算机研究与发展,2007,44(10):1640-1646.
[5]郑晓鸣.浅析高性能计算的现状与发展[J].福建电脑,2007(2):211.
[6]严隽琪.上海高性能计算公共服务平台[J].工业工程与管理,2005(1):1-5.
[7]黄建忠,张沪寅,程媛.开放式高性能计算平台的建设与研究[J].计算机教育,2012,22:55-59.
[8]关伟豪,吴汝明,郭清顺,等.中山大学高性能计算服务平台的建设[J].实验技术与管理,2011,28(4):303-306.
[9]林皎,张武生,徐伟平.高性能计算平台开放服务的探索与实践[J].实验技术与管理,2012,29(3):334-336.
[10]林新华.走出高性能计算中心的建设误区[J].中国教育网络,2009(5):42-43.
[11]姚继锋.什么成就了超算中心[J].中国教育网络,2010(6):18-20.
[12]林皎,陈玉洁,张武生,等.高性能计算平台建设的探索与实践[J].实验技术与管理,2012,29(5):217-220.