超级计算机背后的年轻人:“中国超算团”SC15夺冠

18.03.2016  09:46

裘捷中在颁奖仪式上举起奖牌

  当运行了48小时的计算机关机时,裘捷中松了一口气。“应该是前三。”这个21岁的中国小伙子既有信心又不太确定,毕竟这一次,他和小伙伴参加的大赛称得上“全球最顶尖”。

  结果,当地时间11月19日,在美国得克萨斯州国际大学生超级计算机竞赛(SC15)颁奖现场,来自清华大学的超算团队,捧回了冠军奖牌。

  “不仅是颁发一枚奖章……它为这个行业未来几年的发展定下了目标,也是对中青年研究者最好的激励。”美国阿拉贡国家实验室一位高级计算机专家为获奖者致辞。

  在此之前,这支由清华大学计算机科学与技术系大三、大四学生组成的团队,已经摘得了世界大学生超级计算机领域另两项大赛的头名。

  集齐“超算三大赛事”冠军的小伙子们平均年龄还不到21岁,就连他们的指导老师,也是一位5年前才博士毕业的年轻人。

   我们搭建的其实就是简易版的天河二号

  在清华大学东主楼一间装饰简单的会议室里,南征北战的世界冠军们坐在桌边。他们面前的桌子凌乱不堪,堆着线材、硬盘、音响和一台游戏机。几瓶喝了一半的矿泉水随意地丢在桌面上。

  裘捷中是队长。从今年5月SC15公布题目到11月大赛结束,有些队员已经忙活了150多天。

  这位队长看起来并不善于交流。他圆圆的脸庞上稚气未脱,手里来回捏着一只橄榄球玩具。听见不感兴趣的话题,他就打开笔记本电脑,在键盘上敲击一番。

  只有提起超级计算机,他才会放下手中的玩具,挺直身板儿,有时还激动地边比划边说。

  即使在新概念层出不穷的IT领域,也没什么能比得上蕴藏着巨大前景的超级计算机。

  不久前,人们刚被世界上运算速度最快的 “天河二号”震撼,今年8月,美国总统奥巴马就发布行政命令,要求在2025年建成世界上第一台百亿亿级超级计算机——每秒100亿亿次计算,远超过天河二号的每秒5.49亿亿次。

  美国《商业周刊》网站曾发表文章称:“在过去的10年里,中国和美国一直在争夺超级计算机的领先地位。而这一趋势似乎仍在继续。

  越来越多的年轻人被“卷“进这场“竞赛”中。

  刚刚结束的SC15是一年一度美国超级计算年会的一部分。目前,这项创办于1988年的盛会是世界上规模和影响力最大的。从2000年开始,大学生参与成了年会上的固定项目,“许多美国的传统强队都会参加。

  “这对我们这个行业很重要。”本届超算年会主席杰克·柯恩表示。

  除此之外,团队的指导老师、清华大学计算机系助理研究员翟季冬告诉中国青年报记者,被冠以世界或国际之名的三大超级计算机竞赛,分别在亚洲、欧洲和美国举行,除了SC,还有由亚洲发起主办的世界大学生超级计算机竞赛(ASC)和欧洲的国际大学生超算竞赛(ISC)。

  在踏上美国之旅前,清华大学这支队伍拿了三届ASC冠军和两届ISC冠军。在5月18日举行的ASC比赛中,他们挑战的题目涉及国际大科学工程平方公里阵列望远镜(SKA)的数据处理软件。

  SKA是全球最大的“大数据”项目,其中最复杂的过程之一就是数据处理。在超算领域,这被称为“宇宙级难题”。科学家希望通过那些参赛者的年轻大脑,对这一难题进行优化。

  “简单地说,我们搭建的就是个简易版的天河二号。”超算团队的成员之一王邈说,“当然要简陋得多。

   让程序跑得更快,也是为人类研究、对抗疾病做了一点贡献

  没人说得清,首次参加SC15的决定是怎么作出的。裘捷中只是轻描淡写地回忆,老师当时说“今年可以试试这个比赛”。

  在指导教师翟季冬看来,这些本科生有着丰富的国际交流经验,除了显眼的黑头发,他们和其他国家同龄人没什么区别。

  比赛现场设在顶级的会议中心,年轻人穿着简单的T恤衫,脖子上挂着U型枕头,头也不抬地在电脑前忙碌。从学术机构或公司赶来参会的业内人士,有时会在那些放置着各种外套和线缆的桌子前驻足,好奇地询问他们搭建的简易超级计算机如何运行。

  夜深人静时,人群从会场离开,只有点亮的屏幕和嗡嗡作响的机器陪伴这些“刷夜”的年轻人。

  今年夏天,SC15组委会公布了比赛的5个应用程序,内容涵盖天气预测、量子力学、生物基因以及人口流动等多个实际应用问题。赛前,参赛选手要优化每一个程序。在比赛现场,谁的程序在保证结果准确的前提下跑得最快,就有可能获得高分。

  “普遍意义上来说,超算是由成千上万台高性能计算机通过高速互联网络组成的大规模计算机集群。”超算团队队员卓有为介绍,“对于研究超算的人来说,怎么样让机器跑得更快,怎么样更省能源,本身就是他们的目标。

  对于这些本科生来说,从气候到生物,几乎都是全新的领域。在开始敲代码之前,他们不得不先去请教其他专业的同学或老师。

  在参加比赛的6人中,队员梁俊邦分到的题目是模拟计算传染病传播的过程。他“吃饭也想,睡觉也想,实在不行就打几个小时游戏再接着想”,最终找到已被广泛运用的程序中的一个运算瓶颈,突破之后,“加速10%左右”。

  “这让人类对疾病的了解更加深刻了。我们让程序跑得更快,也是为人类研究和对抗疾病做出了一点贡献吧。”梁俊邦说。

  在另一名成员鲁逸沁看来,“这个团队没有系统的学习过程,能力不可能靠老师一步步教,第一是兴趣,第二是专业基础,第三就是自觉自学。

  虽然大学里才正式开始学习计算机,但从高中甚至初中开始,以0和1为基础的代码就把这群男生迷得神魂颠倒。

  高中时,梁俊邦曾把稀奇古怪的代码输入电脑,“召唤”出一句“Hello World”(世界你好),那高兴劲儿他至今难忘。

  2012年队伍刚成立时,主要是高性能计算研究所的学生报名参加,后来,人渐渐多了。

  “我们都是到宿舍拉人!”队长裘捷中说,“标准就是在学有余力的前提下看谁更靠谱。

  《高性能计算导论》课,几乎是这些本科生在学业中能够接触到的关于超级计算机的全部知识,剩下不少内容都要靠互联网提供。

  有些人加入这个团队,是因为听说“他们很厉害”,但真正加入之后,才发现“根本听不懂讨论”。

  找同学询问、泡图书馆、看论文……队员们几乎把所有课余时间都用来储备专业知识。每周大家都会聚在一起讨论。

  熬夜是“家常便饭”,但对于这些90后男孩儿来说“不算啥”。在他们看来,超算设备昂贵,自己能用一用,就“挺有意思挺牛掰”。

   参加比赛是一个挑战自我的过程,但更重要的是成长

  直到走进赛场,负责设备搭建的王邈才算开了眼界——其他国家不仅都带有备用设备,在超级计算机的浮点性能方面,“我们也并不占优势”。

  更让人紧张的是,由于赞助商的原因,距离比赛不到24个小时,团队才拿到连接8台机器的网络通信系统。而对于超级计算机比赛来说,程序必须联机运行调试,才能达到最优效果。

  翟季冬起初并没有想到,在比赛现场,这些小伙子表现异常出色。

  为了使比赛公平,主办方要求参赛队员搭建的超级计算机总功率不能超过3120瓦。带着各种先进机器的超算团队,必须在保证程序运行尽可能快的同时,想办法限制功耗。

  “我发现我们团队的功率几乎一直都贴着警戒线。”翟季冬回忆,“这就要求队员一方面对程序非常熟悉,知道何时会出现使用机器的高峰,另一方面知道有效的指令,降低机器功率。

  比赛要求所有指导老师离场,但由于没有切断网络,场外求助其实并不难。翟季冬几次试图问学生们有什么困难时,都被回绝了。

  “没有谁比我们更了解这些机器。”他们至今自信满满。

  在比赛现场,每支队伍头顶都有一盏警报灯,当机器超过额定功率时会进行提示。并没有人因此紧张,监控程序运行的间隙,来自世界各地的年轻人跨越主办方架在不同队伍之间的栏杆,从编程心得到美食旅游,什么都聊。

  按照比赛规则,机器要保持48小时不停运转,6个人就轮流值班看着机器,监控硬件的王邈几乎两天两夜没回宾馆,困了就往沙发上一躺,饿了就啃两口会场提供的汉堡,以至于后来“一闻到那股味道就恶心”。

  比赛接近尾声时,一台机器的内存条坏了,可直到修好,王邈才给老师发短信,告诉他机器坏了,紧接着发了一条“但是我已经搞定”。

  “这些斩获大奖的同学,都有自己的梦想并执着实现它们。”在最近的一次学校活动中,清华大学校长邱勇说,“参加比赛是一个挑战自我的过程,但更重要的是过程中的成长与收获。

  如今,曾经在领奖台上把奖牌奋力举起的队长马上就要变成计算机系的直博生,相比于下一次超算大赛,他更关心的是“博士期间的工作和研究”。对于其他同学来说,超算也并不是他们继续学习的方向。一回到学校,这些年轻人又迅速地被毕业论文、实习、出国申请等事务包围。

  但他们依然清楚记得比赛的点滴和得知获奖的那一刻。一群小伙子不顾会场的安静,突然大叫起来,还特意搓了一顿得州烤肉作为庆祝。他们也没有忘记,回国后队长还欠他们一次庆功宴,至今没来得及组织。

  (实习生戴瑞凯对本文亦有贡献)