众口不再“难调”—HPC平台建设之清华经验

近年来,出于科研和教学的需要,包括清华大学、南京大学、吉林大学等在内的多所高校纷纷建设自己的HPC(高性能计算)平台。在HPC平台的实际建 设与运营中,这些大学探索出许多宝贵经验。为此,《网络世界》记者特地采访了清华大学信息国家重点实验室副教授张武生,他向我们介绍了清华大学在解决不同 HPC用户作业个性化控制方面的思路与方法。

高校HPC平台:众口难调

作为我国最早开展HPC研究的单位之一,清华大学早在2005年开始自建HPC平台,如今,该校HPC平台二期工程也于今年4月正式投入使用。据张 武生介绍,清华大学HPC平台采用CPU+GPU混合计算模式,其中,CPU部分具有一百万亿次浮点计算能力,共使用740台基于英特尔至强5670的刀 片服务器,总CPU核数达8880个,存储容量1PB,通过22个IO节点与集群相连。

“由于多个院系共享一个HPC平台,上面跑的HPC应用种类繁多,各个科研用户对HPC计算环境的需求也不一样,可以说是‘众口难调’。因此,我们 这种高校计算中心普遍面临的问题就是,如何解决不同用户作业的个性化控制难题,如何在兼顾公平的同时,服务好重点应用。”张武生说。

张武生表示,该校HPC平台的最大亮点就在于有效解决了校级计算中心多应用、多用户“众口难调”的问题。

两大经验

我们知道,科学计算集群维护中很繁琐的一个工作就是维护系统的全局一致性:就是要保证集群各个节点上的配置、用户信息、软件安装全局都是一样的。传 统做法是,每个节点都装操作系统,但一旦有节点坏掉了,或有硬盘坏掉了,或节点硬件坏掉了,就要重装系统,然后再做全局一致性同步,这个是一个很大工作 量,尤其一个HPC平台的节点数量往往多达成百上千。因此,清华大学自行开发了一套集群管理系统——用它为集群提供“单一系统映像”。

“单一系统影像”集群管理系统实现了用单一操作系统内核管理所有的硬件。简单地理解,就是只要在一个节点上装一个操作系统,不再需要所有节点上都 装。这种做法,大大增强系统的容错能力,做到外界故障不影响软件环境,也免除了集群全局一致性维护工作。更重要的是,它还通过偏特化配置技术满足了各个 HPC用户的个性化需求。

张武生解释道:“比如一些信息学科的研究本身就跟操作系统、硬件等相关。他们做实验时,常常会要求我们装某个特殊版本的操作系统、驱动程序。要是在 以前,不是我们拒绝他,就是要把集群上的系统全部重装一遍,等他用完之后全部恢复过来,非常麻烦。现在有‘单一系统映像’之后,直接在主控节点上装一个, 然后指定一组机器启动该操作系统,其它机器完全不受影响,用完之后再删掉就可以,变得非常简单。”

另一大经验在于作业调度系统的选择。

高校HPC平台要求作业调度系统必须能对各个应用软件具有非常良好的支持,不仅能支持各种工程计算应用,还能支持各种各样基础科学研究。这意味着作 业调度系统要与各个商业应用软件具有良好的接口和后台支撑,同时还必须支持各种开源软件,确保各种应用软件在集群环境下的稳定应用。

“事实上,相关的开源软件能找到的我们都用过,但最终还是选择了Platform公司作业调度系LSF(Platform LSF HPC)。”张武生告诉记者。

张武生表示,LSF有两大优点。一是稳定性非常好,从来没发生作业或者节点会丢失的问题;二是可用性好。“尤其我们学校老师会有各种各样控制方面的 需求,例如,有些老师对作业运行时间、使用的拓扑结构都会提特殊要求,等等。LSF提供配置参数特别多,我们通过组合的方式就能满足老师们的需求。如果是 开源作业调度软件,要弄明白这些参数的用途就很费劲,各个开源软件配置参数也没有LSF这样丰富。而且,Platform提供很多支持,利于我们快速响应 用户需求,把工作质量提高上去。”张武生说。