MCPLive > 杂志文章 > 目标2亿亿次!“泰坦”超级计算机探秘

目标2亿亿次!“泰坦”超级计算机探秘

2013-01-16黄博文《微型计算机》2013年1月上

随着新一期超级计算机Top500名单的出炉,“泰坦(Titan)”以Rmax大平均性能17.59PFLOPS和Rpeak峰值27.11PFLOPS登顶,瞬间成为众人聚焦的新星。作为一台理论计算能力领先普通电脑达五个数量级之多的超级计算机,其结构组成和维护管理与我们的家用电脑自然会有着本质上的不同。那么“泰坦”是如何成就超级计算机No.1的?本文将为读者们一一呈现。

目标2亿亿次!“泰坦”超级计算机探秘
目标2亿亿次!“泰坦”超级计算机探秘

泰坦前世,历史回眸

在美国田纳西州第三大城市诺克斯维尔附近,橡树岭小镇坐落于山林掩印之中。1942年二战期间,美国国防部参与“曼哈顿”原子弹研究计划的部分人员在此创立了一间核科学实验室,这个研究机构后来发展成为美国能源部下属的顶尖级国家实验室——橡树岭实验室。虽说它的名称是一间实验室,但是它的园区占地面积达到18.1平方公里,雇员超过4000人,其中科学家与工程师超过3000人,拥有将近300项美国国家专利。按这个规模,称其为“大型研究所”而不是“实验室”似乎更加恰当一些。时至今日,核科学和美国国家安全项目仍然是橡树岭实验室的重要课题,这个名字对于经常关注超级计算行业的读者来说,即便不是如雷贯耳,至少也似曾相识。这里安置的超级计算机亦是超级计算机全球五百强榜单上的常客。

橡树岭国家实验室一直拥有一流的计算设施,“美洲虎(Jaguar)”便是象征橡树岭实验室超级计算能力的图腾。这台超级计算机的部署与升级经历了漫长的旅途,襁褓中的“美洲虎”于2005年发出第一声啼哭,这只Cray XT3架构的幼虎已经是平均计算速度达到20TFLOPS的超级计算机,在当时的榜单上排名第10。此后“美洲虎”逐步升级,增加核心提高计算速度。它在2006年11月的榜单上正式以“美洲虎”的名称出现,当时的规模已经超过1万颗处理器核心,速度翻倍,超过40TF LOPS,并开始逐步向CrayX T4架构乃至Cray XT5架构过渡。随着时间推移至2008年11月,“美洲虎”的处理器核心数量暴增超过15万,速度突破1PFLOPS,可惜以微弱劣势屈居于当时风头正劲的“走鹃(Roadrunner)”之后,位列第二。但是财大气粗的橡树岭实验室并不打算止步于此,2009年11月,前一轮升级已经砸下1亿美元重金的“美洲虎”再度得到升级,核心数量再度增加50%,速度也应声冲上1.7PFLOPS的顶峰,以领先“走鹃”70%的大幅优势首次称雄Top500,并且在2010年6月卫冕,直至2010年11月被中国的“天河一号”击败。

美国橡树岭国家实验室。(本文橡树岭国家实验室和“泰坦”内部图片来自anandtech的
美国橡树岭国家实验室。(本文橡树岭国家实验室和“泰坦”内部图片来自anandtech的
报道。)

“泰坦”前身,“美洲虎”超级计算机。
“泰坦”前身,“美洲虎”超级计算机。

“美洲虎”升级“泰坦”前后的规格对比。
“美洲虎”升级“泰坦”前后的规格对比。

Top500榜单中使用混合加速架构的系统数量。
Top500榜单中使用混合加速架构的系统数量。

为什么我们要在这里专门回顾“美洲虎”和橡树岭的历史?因为“泰坦”就是在“美洲虎”的基础设施上进行再度升级后破茧成蝶的产物,而“泰坦”的各种超大规模并行计算项目也与橡树岭实验室的研究方向紧密相关。

GPU加速,破茧成蝶

和“天河一号”的CPU+GPU异构体系不同,Cray XT5架构下的“美洲虎”是一个完全由CPU构成的超级计算机。224162个AMD皓龙处理器核心组成的庞大系统在长达两年的时间里守住了Top500三甲的位置,但是功耗也逼近7MW(700万瓦特)。作为对比,中国天津国家超级计算中心的“天河一号”只使用了186368个Xeon处理器核心,但是还搭配了7168个NVIDIATeslaM2050通用计算G PU(以及2048个国产飞腾1000处理器),在Linpack测试中跑出了2.566PFLOPS的平均计算速度。性能领先“美洲虎”的同时,功耗仅有4MW。NVIDIA宣称“天河一号”架构中的GPU起到了关键作用,如果单纯使用CPU来达到这种程度的性能,就需要超过30万个核心,以及两倍的占地面积和四倍的功耗。伴随着“天河一号”登顶的是混合加速超级计算时代的到来。

2007年初,整个Top500榜单上没有一台超级计算机使用额外的加速器。但到了2011年中,采用混合加速体系结构的Top500超级计算机数量已经接近60个,其中绝大多数使用了NVIDI AFermi架构的GPU。在这一形势下,“美洲虎”也启动了新一轮升级计划,升级分两步进行.第一阶段首先从Cray XT5架构升级为混合加速的Cray XK6架构,GPU部分选用了基于Fermi架构的NVIDIATeslaM2090,CPU也换代为AMD皓龙Interlago,各计算节点以Cray公司的“Gemini”拓扑结构进行互联。在2012年6月布的榜单上,升级中的“美洲虎”平均计算性能小幅提升至1.94PFLOPS,功耗却下降至5.14MW,提升计算性能的同时还降低了功耗,这表明新体系下的能耗效率有相当大的挖掘空间。

在美国能源部、海洋和大气管理局共同提供的9700万美元的资助下,橡树岭上的“美洲虎”开始了破茧成蝶,蜕变为“泰坦”的第二阶段升级。在第二阶段改造中,“美洲虎”的架构将再度从Cray XK6升级至Cray XK7, 原先的18688个计算节点上本来具备1颗12核心皓龙处理器。在新一代的计算节点中,这颗CPU被替换成一颗16核心的AMD Opteron 6274,内存从16GB翻倍至32GB DDR3。同时每个节点上的Fermi GPU也升级至基于Kepler架构的NVIDIA Tesla K20x,搭配6GBGDDR5带ECC功能的显存,这些计算节点安置在200个定制版19英寸机柜当中,占地面积404平方米,整台超级计算机连接至美国能源部的能源科研100Gbps骨干网络上。

图1:组成“泰坦”超级计算机的机柜阵列。
图1:组成“泰坦”超级计算机的机柜阵列。

图2:工作人员在安装“泰坦”的升级部件。
图2:工作人员在安装“泰坦”的升级部件。

图3:每个主板上面有四颗16核皓龙处理器和四个Tesla K20x。
图3:每个主板上面有四颗16核皓龙处理器和四个Tesla K20x。

 图4:“美洲虎”升级“泰坦”之后更换贴纸。
图4:“美洲虎”升级“泰坦”之后更换贴纸。

图5:用于散热的金属管道。
图5:用于散热的金属管道。

经过简单的计算不难得知,这台超级计算机拥有了299008个x86处理器核心,内存总量达到了710TB。这将近30万个x86处理器核心都使用GlobalFoundries的32nm工艺制造,CPU晶体管总数达到了44.85万亿个。18688个Kepler GPU则使用台积电28nm工艺制造,总共拥有超过5000万个CUDA核心,GPU晶体管总数达到了更为惊人的132.68万亿个。这些傲视群雄的硬件装备组成了一台速度超过“美洲虎”十倍的新型超级计算机。同时,橡树岭实验将其更名为“泰坦”。

在2012年11月的Top500榜单上,“泰坦”不负众望地实现了17.59PF LOPS的Rmax速度,击败了IBM为美国能源部旗下的劳伦斯利弗莫尔实验室建造的“ 红杉”,将橡树岭实验室重新带回榜首,同时也书写了第一个以GPU加速架构突破10PFLOPS的超级计算机的纪录。据估计,GPU加速器贡献了大约70%左右的计算能力。性能提高了10倍的同时,功耗仅仅提高不到50%,“仅有”8.209MW。作为对比,榜单第三位上日本RIKEN高级计算科学研究院旗下的“京”超级计算机速度“仅”为10.51PFLOPS,但是功耗却高达12.66MW。

运营维护,成本惊人

超级计算行业的浪潮一直滚滚向前,超级计算机基本上每隔几年就会进行类似的升级改造。而“美洲虎”从2005年之后一直稳居To p500榜单的前10位置,这是因为“美洲虎”基本上每年都会进行大规模的升级,开销动辄数千万乃至上亿美元。可以说,橡树岭实验室和美国能源部,以及世界各国的类似机构和组织为了让这些超级计算机维持计算速度上的优势所做的投入,堆起了整个超级计算行业的金山。这些超级计算机虽然带来了罕逢敌手的计算速度,甚至被视为国家科研实力的一个象征,但是它们持续升级和日常运营维护上的开销也着实惊人。首先从升级计划上来说,橡树岭实验室就不得不有所保留。在IO上,“泰坦”采用了10000个标准1TB 7200转2.5英寸硬盘组成了10PB大小的外部存储空间,其IO速度仅有差强人意的240GB/s,显然采用固态硬盘可以大幅改善性能,同时能耗也能更低。但官方给出的理由是“固态硬盘性价比不够高”,换言之也就是成本太高的意思。根据升级计划,“泰坦”此后可能会将存储空间进一步提高至20~30PB大小,带宽提高至1TB/s左右。

经过数据可视化处理的模拟宇宙从10亿年前到现在的演化。
经过数据可视化处理的模拟宇宙从10亿年前到现在的演化。

如上文所述,“泰坦”拥有200个机柜,18688颗CPU与18688颗GPU,橡树岭实验室的工作人员们必须在几个星期里将它们全部更换安装到位。和我们拆装个人电脑的步骤基本上相同,只不过规模大小有云泥之别。这18688颗CPU与GPU以及其他部件当中不可避免地存在残次品,工作人员们在升级完成前必须对其加以测试,确保稳定运行,工作量可想而知。“美洲虎”的供电、冷却系统,机柜和内部互联网络在升级至“泰坦”的过程中也大限度地重复利用,这节省了两千万美元的开支。但是千万不要由此认为维护“泰坦”运转的基础设施会有所偷工减料,让我们分别看看它复杂昂贵的供电和冷却系统。

首先,机柜的供电大费周章地使用了480V电压,而不是美国传统的208V民用电压,这是为了减少铜质电缆的用量,同时减少输电损失,仅此一项就节约了一百五十万美元之多,由此可见其供电系统的规模。“泰坦”的满载功耗高达9MW,为了提供足够的电力,橡树岭实验室给这台巨兽所处的机房配备了25MW发电能力的发电机组。但是在发电系统故障时,后备电力系统无法立刻支撑起大量计算节点产生的电力缺口,蓄电飞轮会以15000r/min的转速投入运转,为“泰坦”的网络连接和IO设施提供16秒的电能。如果2秒钟之后电力未能正常恢复,燃油发电机才会自动投入,在接下去7秒钟时间里与蓄电飞轮同步过后,系统才会稳定转换到另一套发电系统上,“泰坦”的计算节点才能恢复运转。这样一个系统一年的运营下来光是电费一项支出就有一千万美元之巨。再来看冷却系统。“泰坦”的机柜使用热+风冷方式,所有的制冷空气首先会通过5.5摄氏度的冷却水进行降温,然后才送往机房。这套冷却系统拥有23M W的制冷功率,是一台普通家用空调的上千倍,其导管直径达到24英寸,所以为了维持“泰坦”的运转,其背后的基础供电和循环设施几乎可以供给一座小镇的需要。

“泰坦”的计算能力与科研需求

“泰坦”接近每秒钟2亿亿次浮点计算,真有什么科研项目需要如此极致的计算速度吗?答案是,有的。而且申请“泰坦”的计算时间相当困难。据统计,“泰坦”的实际可用时间与已经递交的使用申请相比已经有1∶3的超额,所以这些申请需要具备一系列的资质和前提条件,同时也需要经过一系列的审核。申请者需要向橡树岭实验室表明自己所做的研究的重要性,需要“泰坦”的计算能力解决什么样的问题,以及需要“泰坦”执行的代码是否已经准备充分。同时,橡树岭实验室要求申请者已经在较小规模的超级计算机上运行过自己的代码。每年的4月份“泰坦”开始接受申请,至当年6月底截止,计算时间在当年10月底作出分配。所有的申请会经过两轮筛选,一轮是审查项目代码的可计算性,另一轮是审查项目的科研价值,审查委员会根据这两轮筛选结果来分配计算时间。有的项目希望在两年或者三年内都能够使用泰坦的计算时间,这种项目第一年申报过之后,每年都要再接受审核,申请者需要证明已经使用的计算时间物有所值,共享研究结果,等等。尽管“泰坦”的使用门槛较高,但是对于学术研究,“泰坦”分配的计算时间是免费的,只需要科研人员发表研究结果时表明自己使用了橡树岭实验室的计算资源并致谢即可。对于商业公司才会为计算时间收费。此前“美洲虎”的收费标准是每核心每小时0.05美元,也就是说“美洲虎”以1.7PF LOP S的平均速度运行一秒钟就得收费3.1美元左右,“泰坦”的计算能力超越“美洲虎”十倍,这个价格相信会水涨船高。

那么需要千万亿乃至亿亿次级计算能力的究竟是什么样的研究项目?我们来看一个直观的例子。我们所处的宇宙里,只有0.4%的物质可见,另外99.6%由不可见的暗物质和暗能量构成。如果科学家们能够重新观察宇宙起源演变的过程,那么将帮助了解这些暗物质和暗能量对我们这个宇宙的形成和发展起到了什么样的作用。但是显然我们不具备重新制造一个全新宇宙的能力,我们只能通过超级计算机的计算能力在一定尺度上对宇宙的演化过程进行模拟。来自阿尔贡国家实验室的研究人员不久前就在“红杉”超级计算机上做了试验性的模拟,其中一组测试需要进行3万亿个粒子在百亿光年尺度上的模拟,“红杉”运行这次模拟时跑出了超过13PFLOPS的速度。

大尺度、高精度的宇宙模拟需要极高的计算速度,可以预见“泰坦”上也将运行类似的项目。除了模拟宇宙,“泰坦”将承担的任务还包括高精度的核反应堆、核爆炸模拟。与模拟宇宙类似,我们显然无法深入到核反应堆内部观察反应堆运行的具体状况,也无法进行大规模的实地核爆,超级计算机的高精度模拟能够让科学家们设计更加有效率的核反应堆,军方人士可以在不破坏地球环境的情况下预知到自己手中的武器可对敌方做出多大的杀伤。在橡树岭实验室进行超级计算机升级期间,美国国家飓风研究中心断断续续地使用了升级中的超级计算机进行飓风预测。有意思的是,在他们使用更新后的超级计算机进行预测的时间段里,预测的准确率有极大幅度的提升。可见受限于计算能力,普通计算机若进行高精度的模拟只能够模拟整体的一部分,例如模拟气候变化时仅模拟一个区域,模拟星系演化时只能模拟少数星体等等,或者降低整体模拟精度。超级计算机具备的计算能力越强,这些模拟的精度也就越高,越能逼近真实世界的情况。“泰坦”的超强计算速度能够在此基础上继续推动科学研究的进步。目前泰坦初步接受的六个研究项目包括了引擎燃烧3D模拟、低温磁性材料模拟、分子动力学模拟、核反应堆模拟和气候变化模拟。

“泰坦”王位的继承者

迟大约2016年前后,橡树岭国家实验室还将构建新一代超级计算机,预计性能又将在泰坦的基础上提升10倍左右,但是功耗预计保持在相同水平上。“泰坦”这一次效率上的升级是由于引入了GPU进行异构计算,但是四年后的体系结构很可能没有变化,升级只是引入更强大的新一代GPU和CPU,这样带来的变化只会是量变而无法产生质变。计算效率需要再实现一次质的飞跃,其技术难度更胜以往。这意味着需要从片上多核乃至计算节点互联结构、GPU开发工具和优化编译器、超级计算机操作系统等软硬件各个方面都做出改进,难度不容小觑。目前中国、日本、欧洲、美国等国家都陆续高调宣布了下一代100PFLOPS超级计算机的开发计划,并且时间点都集中在2015~2016年前后,下一轮Top500皇冠将于何处加冕,1EFLOPS的纪录会由谁打破,让我们拭目以待。

分享到:

用户评论

用户名:

密码: