中国高性能计算机冲进世界前十

综合报道

  永无休止的竞赛

  这是一场摩尔定律下永无休止的竞赛。

  2004年6月24日,国际上最具影响的超级计算机TOP排名在德国海德堡市的曼海姆大学再次刷新,这也是TOP500排行榜自1993年建立以来的第23次发布。

  TOP组织在主页(www.top500.org)上发布的新闻的Highligtes(重点、强调)部分里特别说明,来自中国的超级计算机──曙光4000A以Linpack成绩8.061万亿次/秒和峰值运算能力11.264万亿次/秒进入了这次排名的第十位。

  这也是中国超级计算机首次进入TOP500的前十名。此前,中国超级计算机在TOP排名中的最好成绩由联想的深腾6800超级计算机于2003年11月创下,排名全球第14。现在深腾6800的TOP排名下降为全球第26。

  超级计算机的研发是IT领域最引人注目的一部分。超级计算机在天气预测、地震预测、石油勘探和军事研究等领域有非常重要的作用。一国所拥有的超级计算机的水平,从一定程度上可以反映该国的科研水平和综合国力。以TOP排名而论,前10名内美国6席、日本2席、英国1席、中国1席。而德国最快的计算机仅排到21名,法国的第28名,以色列的第33名。因此,此次曙光4000A所取得的突破,将载入中国计算机的史册。

  “曙光”战胜“闪电”

  虽然曙光4000A已经以9600万元人民币的合同金额身属上海超级计算中心,但此刻它仍运行在北京中科院计算所的机房里。

  曙光4000A身躯庞大,它的运算核心是2560个AMD Operton2.2GHz的CPU,由640个节点组成,每个节点是一台4路服务器,满负荷运行一天的电费将近10000元人民币。记者看到,在一间不大的机房里,排满了一排排高大的、黑色的机柜,机房空调和风扇一起运行,发出巨大的轰鸣声──这里看上去更像一个工业时代的厂房。

  室内温度在30摄氏度左右,“这已经有些超标了”,带领记者参观的国家高性能计算中心(北京)副主任冯圣中博士有些不好意思,“李国杰院士看到这里的条件时说,这可能是TOP10里面条件最恶劣的一个机房。”冯圣中进一步解释说:“对于一台超级计算机,它运行时的温度、湿度乃至气压都会影响到整个系统的运行效率。我们在做Linpack测试的时候,有段时间测试成绩一直上不去,后来加了两台巨大的工业空调,系统才稳定下来。所有的测试都是晚上跑的,因为晚上凉快一点,电压也比较稳定。”

  Linpack测试,即使用超级计算机解非线性方程,是目前评价超级计算机性能最通用的一种测试方式,也为业界普遍接受。它主要考查计算机的运算速度、系统效率;同时,因为Linpack测试所需要的计算量极大,系统必须满负荷、长时间连续工作,因此是否能跑完整个Linpack测试,也成为检验系统稳定性的一个参照。

  冯圣中介绍说:“Linpack测试有几个关键环节,一个是能不能跑出最佳的峰值;一个是整个系统的运行效率,再一个就是稳定性。”他告诉记者:“曙光4000A跑Linpack测试需要9个小时,这9个小时是满负荷的,如果能顺利跑下来,相当于计算机在正常情况下连续使用1年。”

  调优,是Linpack测试里的一个术语,指的是对系统进行优化,以在测试中达到最好的成绩,这很像一个天赋优秀的运动员,必须通过专门的训练才能在比赛中夺标。冯圣中告诉记者:“我们有一个假想的对手,就是美国洛斯-阿莫斯国家实验室的‘闪电’超级计算机。它和我们有很强的可比性,也是采用了2000多个Opteron处理器,采用Myrinet网络技术和Linux操作系统。洛斯-阿莫斯实验室属于美国军方,有非常深厚的超级计算机技术积累。当时我们就在想,如果‘曙光’的运行效率能超过‘闪电’,就可以说是一个重大胜利。”

  为了测出最佳成绩,曙光4000A经过了多次调试,第一次跑的结果是整体效率65%多一点,经过调整,第二次测试超过了70%,这已经是很好的成绩了,但调优小组并没有止步。“在70%这个水平上,要再提高0.1%都有难度,这已经是节点的顶点了。有很多以前积累的一些知识和经验,可能在这时不一定有用了,或者是影响有限了。我们的判断是,有些问题可能要重新做理论分析才能调整。最后,通过我们专门的小组比较艰苦的工作,4000A的Linpack效率达到了75.6%,这个效率是同类系统中效率最高的。最后的结果,曙光排第10名,而‘闪电’被挤到了第11名。”冯圣中为此感到十分欣慰。

  中国不应盲目追求指标

  “成为TOP10我觉得也很光荣,就像奥运会拿了金牌,振奋人心。”曙光4000A的研发主帅、国家高性能计算机研发中心主任孙凝晖博士淡淡地说:“但是我们的研发目标不是名次和指标,而是使用价值”。

  孙凝晖用了盖楼这个例子来进一步说明问题:“有人说,通过集群技术,只要愿意花钱,更高运算能力的计算机也很容易造出来。如果仅仅从技术角度讲,这说法并不错。但为什么曙光有能力做,但是没有做到更高?因为超级计算机是拿来用的,不是拿来比的,它要直接服务于科研和商业。就拿盖楼来说,现在大家比的不是谁的楼高,而是谁盖的楼更结实,或者是用更少的钱盖,或者是谁盖的楼更科学。我们也是一样,在4000A的整个研发过程中,我们并没有刻意追求这个峰值。”

  孙凝晖比较在意的是两点,一个是曙光4000A并非为一个专门的行业应用而造,它具有通用性,可以跑各种需要大运算能力的商业软件,用上海超算中心的话说就是:“为上海建立一个基础计算设施,它的使用率每年都要超过80%。”另一个是在研发的过程中,可以提高我国战略级的超级服务器的整体技术水平,并向其他领域技术辐射。

  在过去,中国的超级计算机大多为某种专门的行业应用开发,通用性很差。而曙光4000A采用的是Linux操作系统,它将成为中国国家网格的南方主节点,将用于各种科研计算。

  同时,“4000A除了处理器和操作系统不是自主研发的之外,其他部分都是国产的。此外,在对它研发的整个过程里,推进了我们对于服务器主板技术、网络结构、监控系统等超级计算机关键技术从理论到实践各个层面的全面认识,积累了大量很宝贵的经验。对提高我国超级计算机技术的整体水平的帮助是巨大的。”孙凝晖如是说。

  “我们是在扎扎实实地发展技术,制造符合用户的需求相的产品,我们没有和谁竞争、竞赛,这点大家应该清楚。”曙光总裁历军在接受采访时说,“我们发展超级计算机必须符合商业规律”。