《电子技术应用》

E级超算样机要来了

2017/1/22 6:00:00

从天河二号到神威太湖之光,中国多次登顶世界超算500强,无愧于超算大国之名,而在向超算强国蜕变的路上,中国再次有了突破性的进展,在不久的将来,或能摘下超算领域的“下一顶皇冠”——E级超算。近日,据媒体报道,2016年天津超算中心同国防科技大学合作,启动了新一代百亿亿次超级计算机样机系统的研制,目前已经取得了阶段性成果,预计2017年底能够研制成功。

天津市人大代表、天津超算中心应用研发工程师张婷出席本月17日举行的天津市第十六届人大六次会议时,介绍了有关新一代百亿亿次超级计算机一些信息。

据国家并行计算机工程技术研究中心此前透露,该中心牵头的“E级高性能计算机原型系统”研制项目正式启动,目标10倍于目前世界最高水平。这标志着包括核心处理器在内的全国产化百亿亿次超级计算机步入实际研发阶段。

张婷介绍说,新一代百亿亿次超级计算机预计2020年研制成功并建成投用,它的计算能力将是目前中国首台千万亿次超级计算机“天河一号”的200倍。

除了在计算能力上的拓展,更重要的是技术的突破,它在计算密度、单块计算芯片计算能力、内部数据通信速率等方面都将得到极大提升,而且,它将是国内自主化率最高的超算,包括自主芯片、自主操作系统、自主运行计算环境等。

张婷表示,新一代百亿亿次超级计算机研制成功后,将依托超级计算平台,开展高性能计算、云计算、大数据等方面的综合应用,在支持国家科技创新、支持区域产业服务等方面开展新的应用创新。

1484879843985054607.png


超算领域的有力竞争者

全球超级计算机500强排行榜主要编撰人之一、美国劳伦斯伯克利国家实验室副主任霍斯特·西蒙曾说,中国在高性能计算领域已经取得巨大进步,正成长为全球超算舞台上的有力竞争者。

西蒙说,超算对科学、经济与军事等多个领域具有重要意义,自2000年以来中国在超算技术方面大力投资,现在中国在这个领域已经到达“一个非常、非常、非常有竞争力的阶段”。

但西蒙并不认为中国已经成为超算强国。他说,超算是一个整体生态系统,它包括硬件、软件、应用以及培训下一代科学家等,此外大学、研究机构和企业也应积极参与其中,但要同时做到这些不同方面非常困难。中国在努力去做美国可能花了20年做的事情,希望能在较短时间内完成这些工作,但“我认为中国还是需要稍微长一点的时间。从这个意义上说,中国仍然还有一系列事情需要去完成”。

中国在超算应用上的进展让西蒙印象深刻。他回忆说,2010年“天河一号”在超算500强榜单上夺冠时,这个超算系统距应用还有很长的距离;但去年6月“神威·太湖之光”登顶榜单时,中方就介绍了好几个应用,这些应用都很棒,而且中国科学家现在也以更快的速度学会怎样使用这个系统。

“我认为已经有了很明显的进展,”西蒙说,“中国可能还有一些其他的不足,但很显然,考虑到硬件有了、应用有了、基础设施有了,有很多支持,中国在使用超算上已经取得巨大进步。”

西蒙认为,中国超算发展不仅仅是超算自身的事,还关系到中国半导体行业的发展。中国每年进口的芯片数额巨大,存在巨大的半导体贸易赤字,所以中国发展超算是减少这种赤字的“一个很好的深思熟虑的”战略的一部分。

“中国进口了大量半导体(指芯片),而今天半导体在所有地方都有应用,尤其在空间领域和汽车行业。物联网也是到处需要芯片,所以中国要发展高端生产,显然需要在半导体方面大量投资,以取得更大的国内生产份额。我认为这是一个大问题。超算只是整个战略的一部分,”他说。

抢滩E级超算

“神威·太湖之光”成为世界最快超级计算机后,美国、日本、欧洲等国先后制定了自己的E级超算研发计划,并将相应计划的完成时间表设定在了2020—2022年。中国也将百亿亿次超级计算机及相关技术的研究写入了国家“十三五”规划,同时也希望在2020年左右实现。

不过,百亿亿次超级计算机的建造难度并不仅仅在于速度的提升。中科院计算所研究员、中国计算机学会高性能计算专委会秘书长张云泉介绍说,研发E级超算实际上面临着编程墙、功耗墙、可靠性墙和存储墙几个“大墙”的围堵,如何越过这几堵墙,面临很大的挑战。

在“神威·太湖之光”以自主芯片和操作系统获得接近十亿亿次的计算速度之后,中国看到了自主研发E级超算的希望和曙光。在国家“十三五”高性能计算专项课题中,我国公示出了三个分别由中科曙光、国防科技大学以及江南计算技术研究所牵头的E级超算的原型系统研制项目。

为何研制?

这既是很多人的问题,也是超级计算机发展面临的矛盾。超级计算机性能不断提升,但由于能耗越来越大,而应用范围却并没有相应扩大。

“超级计算机在高性能与通用性方面一直存在矛盾。”中科院院士李国杰是曙光公司的开创者之一,研制了我国第一台对称式结构计算机——曙光一号。

曙光公司总裁历军说,超级计算机在性能不断提升的同时,面对着存储、可靠性、能耗、扩展性以及应用创新等问题。在每秒10亿次计算能力的时候,超级计算机主要是用于工程计算或者科学计算,但是到了百亿亿次计算能力时,已经很难有一个题目需要这么大的规模,传统的科学计算领域已经很难找到这样的题目了。

“所以超级计算机未来向何处发展是摆在我们面前最最重要的挑战。在E级应用创新方面,我们希望把传统的超级计算机的应用向云服务和数据处理去延伸。”历军介绍,在这些方面曙光公司已经做了大量工作。未来最新的E级超级计算机的应用可能来自于云计算、云服务,来自于大规模的数据处理。

“对于E级计算机来说,应用是最大的挑战。”曙光公司副总裁邵宗有一言以蔽之,“如果超级计算机技术不能在市场上获得应有的回报,这个市场会萎缩,研发投入就会萎缩。”

生命科学、流体空气力学、仿真、气象、气候、环境等是超级计算机传统的几大应用,而超级计算机如何与云计算、大数据、人工智能相结合是新的发展方向。

中科院计算所研究员,中国计算机学会高性能计算专委会秘书长张云泉指出,E级超算可以应对一些具有重大计算的需求,如全球气候变化模拟、天体物理大数据的处理、模拟宇宙的演化、模拟新型材料及核武器等。同时,除了科学计算,它也将在深度学习、大数据、云计算等领域发挥重大价值,帮助提高人们对各领域日益剧增的海量数据处理利用的能力,并从中发现新事物、新规律和新机会。因此,E级超算具有极高的科学、社会、经济和产业生态价值。

人才储备渐多

一直以来,高性能方面的人才培养都是国内教育的一大难题,而培养之后的人才也非常容易流失。联想集团首席科学家祝明发博士认为:高性能人才培养主要是两个方面,一个是学校,另一个是需要应用渠道,因为就业就需要高性能事业本身的发展。

高性能计算和高性能计算机不是一个概念,大部分都是高性能计算化学、材料科学,这方面的人才培养不仅是计算机专业,还有物理、数学、材料科学、地理勘探等等,他们这些专业都要学习高性能计算机知识,还要学习高性能计算机的软件编程以及并行算法。这些完全是靠应用来驱动,各个学校、各个单位都是非常重视。

另外就是高性能计算机本身的硬件和系统软件,系统软件方面的人才培养一定要是通过高性能计算机的研制和生产。高性能计算机现在规模已经很大了,这方面人才培养就是很多的高性能计算机科研项目和国家项目。这些专项对于支持高性能计算机软硬件的研发就直接推动了人才的培养,因为科研项目首先是推动研究生、博士生和硕士生,另外就是一些学校已经对本科生开设高性能计算课程。

在九十年代初,国内高性能计算产业没有起来,很多人才都去了硅谷或者纽约,但是现在的情况已经完全不一样了,因为国内不管是产业规模还是应用规模都起来了,需要大量的人才,这个行业目前的待遇也不算太低,所以还是对人才有很大的吸引力。

附超级计算机的性能指标及高性能计算简史

超级计算机的性能指标

Top500 排行榜

几十年来,超算性能的定义等同于计算速度,以flops衡量。Top500以运行LINPACK基准测试所能达到的最高性能Rmax(单位:Tflops)对500个超算系统进行排名。排行榜同时提供很多有用的信息,包括制造商、地点、核数、网络互连技术等。表1为2016年6月排行榜前10的超算,其中Rpeak(单位:Tflops)代表理论峰值速度。

1484879844032042276.png


10台超算中,中国的超级计算机位居前两位。其中2013年7月发布的天河二号,已经在此之前连续6 次以33.86Pflops的运行速度排行榜首。其他4台在美国,日本、瑞士、德国和沙特阿拉伯各有1台。

Green500 排行榜

在持续几十年的运行速度的竞赛中,建造和能耗的预算并不在考虑之中,但从业者逐渐发现超级计算机正面临着能耗过高的限制。2007年,侧重于超算能效的Green500排行榜开始发布。用电效率Mflops/W,即每W 功率可以支持多少Mflops的运行速度。最近,Green500和Top500宣布合并使用同样的提交规则来标准化能耗测量标准。相关的说明文档详细规定了能耗测量所需要考量的因素,并设定了由低到高3种测量品质。这对提交的数据提出了更高的要求,以保证最后能效排名的准确性。同时Green500和Top500依然是不同网站上独立的两个排行榜。

表2为2016年1月Green500榜单前10位系统,出人意料的是,Green500上大多数高排名的超算没有在Top500的前列出现。通常节能型的超级计算机是在给定的能耗限制下仔细设计建造的,以求达到可能的最高能效。通常这些机器规模较小,能耗只有几万瓦。制造同时拥有顶尖计算速度和高能效的大规模超级计算机依然是一项具有挑战的任务。

1484879844063037491.png


Graph500 排行榜

Top500排行榜采用LINPACK基准测试超级计算机在解稠密线性方程组时的性能。然而对于超算系统在包括数据密集型应用在内的许多其他应用中,Top500并没有提供有用的信息。2010年,一个小组开始着手研究大数据应用方面的新的性能基准,并在当年发布了Graph500。该基准用于衡量超算通信子系统的性能,它测量的是在一个大型无向图上执行广度优先算法时,每秒遍历边缘的数量,单位为Gteps(每秒10亿遍历边缘数)。

该基准包括一个可扩展的数据生成器,可以生成包含所有边起点和终点边的数组。第一个核心进程生成一个无向图,其格式能够被接下来所有的核心进程所用。此后不允许任何改动,以防止某些核心进程会因此获益。第二个核心进程则是对生成的图执行广度优先算法。两个进程都进行计时。根据输入规格大小分成6个问题类型:从最小1010字节的“toy”到1015字节的“huge”。

Graph500还是一个非常年轻的项目。最新的排行榜只列出了211 台超算,离真正500 有一段距离。大多数Graph500的小规模超算并没有出现在Top500上。大约70%的Graph500超算系统来自美国和日本(表3)。

1484879844547050212.png


高性能计算简史

高性能计算技术源于现代计算机工业。20世纪40年代到60年代,可以称为第一代超级计算机时代。第一代超级计算机的出现源于军方的需要。二战期间,需要手工计算弹道。1943年到1946年间,美国第一代计算机ENIAC应运而生。其间,纳粹Enigma密码机的破译极大归功于英国的Bombe和Colossus计算机。二战以后,美苏两大阵营冷战,核武研制、飞机潜水艇设计、情报收集处理和代码破译的需求驱使计算机朝更强的超级计算能力发展。

1964年,CDC公司的CDC6600具备了每秒50万次浮点运算的能力,第一次被冠以“超级计算机”的名称。1975年到1990年,超算进入了所谓“克雷时代”。1972年Seymour Cray成立了自己的专事超算设计制造的公司。Cray 1采用了标量和向量处理器,80 MHz时钟,133Mflops。发展到1982年、1988年的Cray X-MP和Cray Y-MP分别达到105MHz和167MHz,采用2、4或8个向量处理器,计算峰值达200Mflops和333Mflops。

20世纪80年代,超级计算机的设计主要得益于两个架构,一是向量处理器,二是共享内存的胖节点。1990年到2010年间,超算进入了集群时代。随着Unix和Linux服务器的普及,超算进入了真正有效的并行计算时代,此时胖节点的小型机遇到了内存瓶颈。以太网和高速网络的出现使得其后出现的将单台服务器通过网络互连的分布式内存计算大行其道。1994年,NASA的唐纳德·贝克和汤姆斯特林用个人计算机和以太网硬件搭建了第一个计算集群,将16台英特尔486DX台式机用10Mb以太网连接起来,起名为Beowulf集群,用当时的5万美金成本搭建了1Gflops的超算系统,这是现在Top500中占最大份额的高性能计算集群的源头。

从2000年到现在,高性能计算进入了采用GPGPU加速器的异构计算时代。21世纪初,由于处理器的发展进入了多核到众核的时代,使得计算机群呈现了混合集群模式。

随着大数据和人工智能技术在互联网、自动驾驶、机器人等领域的回暖,新的对计算和数据迁移的压力,使得异构混合集群更成为高性能计算的主流架构。深度学习、神经网络和量子计算的引进成为新趋势。从计算的角度,当前高性能计算技术的阶段,可以总结为一句话:“计算近乎免费,而数据移动是昂贵的。”中国自己的超算发展,也沿袭了一条从小型向量机到混合异构计算集群的发展道路。


继续阅读>>