超算简史与下一代超级计算机

与世无争的帅哥 提交于 2020-01-09 10:32:28

【推荐】2019 Java 开发者跳槽指南.pdf(吐血整理) >>>

什么是超级计算机

上图为超算界2012年世界冠军“泰坦”(Titan),它有一万多个兄弟,每个兄弟都是当时最强的CPU,再配上GPU、高速网络等高精尖武器,运算速度达到20+ PFLOPS。“泰坦”占地面积与标准篮球场相当,消耗的电力足以供应一个小型城镇;普通电脑放在背包里带走,超级计算机要专门建一栋楼来放置。

“超级计算(Supercomputing)”这一名词在1929年《纽约世界报》关于“IBM为哥伦比亚大学建造大型报表机(tabulator)的报道”中首次出现。超级计算机是一种由数百、数千甚至更多的处理器(机)组成的,能计算普通PC机和服务器不能完成的大型、复杂课题的计算机。

超级计算机是计算机中功能最强、运算速度最快、存储容量最大的一类计算机;多用于国家高科技领域和尖端技术研究,对国家安全,经济和社会发展具有举足轻重的意义;也是国家科技发展水平和综合国力的重要标志。

超算简史

1960年代前

60年代及之前,可以看成是超级计算机的蛮荒时代,有IBM、DEC、GE等众多玩家。

其中IBM的各种牛,各种首创,不一一细表。我认为对广大程序员影响最大的还是FORTRAN的发明,它是影响了计算机历史,影响了编程语言的发展,并且如今仍在科学计算领域仍然被广泛使用。刚毕业时,我还在物探局编写、优化了大量FORTRAN模块。

还有一个不得不提的是CDC (Control Data Corporation)公司,它不仅有非常产品优秀(如上图的CDC 6600);而且其拥友一位杰出工程师Seymour Cray。Seymour Cray在CDC工作多年并设计了一系列当时最快的计算机,直到他离开后创立了自己的公司,开创了超级计算机的一代枭雄──Cray。

1970 - 1980年代

Seymour Cray创立自己的公司──Cray Research。凭着他的新设计,Cray Research一度主导了当时的整个超级计算机市场。

上图为Seymour Cray和他的Cray-1,Cray-1成功使用向量处理器(vector processor),性能是同期其它产品的几倍。

Cray-2首台4路向量处理器,成为当时峰值最高的超级计算机。

巅峰之后,其后Cray公司急速下滑;经历了破产、被收购等一系列变故,命运多舛、但仍然顽强的坚持着;直至今日,Cray依然是超级计算机领域的巨头之一。

向量处理器(vector processor),是一种实现了直接操作一维数组(向量)指令集的中央处理器(CPU)。向量处理器可以在特定工作环境中极大地提升性能,尤其是在数值模拟或者相似领域。向量处理器最早出现于20世纪70年代早期,并在70年代到90年代期间成为超级计算机设计的主导方向,尤其是在多个Cray平台。现在,绝大多数商业化的CPU实现都能够提供某种形式的向量处理的指令,用来处理多个(向量化的)数据集,也就是所谓的SIMD(单一指令、多重数据);如常见的 SSE, MMX和 AVX等。

1990年代

90年代,是MPP(Massive Parallel Processing)大爆发的时代,处理器个数由原来的个位数爆炸增长到几千个。

MPP属于IT巨头的定制机,每个节点使用定制CPU,运行OS微内核,使用单独开发的专有网络连接。具有代表性产品有:Intel ASCI Red,IBM SP2,Cray/SGI Origin 2000。

MPP架构与现在的集群(Cluster)已经非常相似了,最大的差异点是其组件大多是单独定制开发。MPP架构主导超算领域,同时催生了另外一项沿用至今的技术 -- 消息传递接口(Message Passing Interface,缩写MPI)。MPI是一个并行计算的应用程序接口(API),常用于MPP、集群系统等分布式内存环境程序设计。MPI的特点是高性能,大规模性和可移植性;直至今天仍为高性能计算的最主要模型。之前,本人围绕这个计算机领域的90后,前后工作了N年。

走进新世纪

进入新世纪后,集群(Cluster)得到蓬勃的发展。集群的节点是一台完整的商业服务器,运行通用操作系统(感谢Linux,感谢GNU!),互连网络使用商业标准的IB和以太网设备连接,存储为SAN、NAS和并行文件系统。

原有的MPP超级计算机的单独定制门槛被打破,“堆机器”成了新玩法。国内厂家在这一时期开始崭露头角,如联想的深腾系统、曙光公司的曙光5000A等等。

之后,国防科技大学异军突起;其设计的“天河一号”是我国首台千万亿次超级计算机。

“天河一号”从2008年开始研制,按两期工程实施:

一期系统(TH-1):于2009年9月研制成功;装有3072颗Intel的Xeon E5540 2.53GHz四核处理器和3072颗Xeon E5450 3.0GHz四核处理器,共有24,576个处理器核心。天河一号还装备2560块AMD的Radeon HD 4870 X2显示卡,共有5,120个图形处理器用于图形处理器通用编程。该超级计算机系统部署于,设立在天津滨海新区的国家超级计算天津中心作为业务主机。

二期系统(TH-1A):于2010年8月在国家超级计算天津中心升级完成;配备了14,336颗Xeon X5670处理器、7,168块基于NVIDIA的Tesla M2050计算卡、2,048颗国防科技大学研制的飞腾处理器以及5PB存储设备。升级后的TH-1A比TH-1理论峰值性能提高了3.89倍,实测性能提高了4.45倍。2010年11月14日,国际TOP500组织在网站上公布了最新全球超级计算机前500强排行榜,我国首台千万亿次超级计算机系统“天河一号”(TH-1A)排名全球第一。

“天河一号”是我国首台采用异构加速卡架构设计的超级计算机,其中第一期系统(TH-1)使用了Intel CPU + AMD GPU卡,第二期系统(TH-1A),GPU卡改为生态更成熟NVIDIA Tesla M2050。本人参与并见证了,东方物探石油勘探地震资料处理应用在天河-1A上运行,是当时最早期的、可支持NVIDIA GPU的超大规模并行应用。鉴于其巨大意义,当时有一篇著名的文章《超级计算机天河一号应用水平进入世界先进行列》

继“天河一号”后,由国防科学技术大学研制的超级计算机系统“天河二号”,于2013年6月起至2016年6月之前(六连冠),再次成为世界上最快的超级计算机。

2016年6月20日,由国家并行计算机工程技术研究中心研制、安装在国家超级计算无锡中心的超级计算机“神威·太湖之光”超级计算机,超越同为中国建造的“天河二号”,成为世界上最快的超级计算机。至此以来,中国长期(2013年6月至今)占领TOP500首位,成为了超算领域的迅速崛起的一颗耀眼新星。

超算的武功排行榜

TOP500项目是针对全球已知最强大的电脑系统做出排名与详细介绍。此项目始于1993年,每年出版两次最新的超级计算机排名列表。每年的第一次排名公布总是在六月份的国际超级计算机会议(ISC)上,而第二次排名公布则是在十一月份的超级计算会议(SC)上。

最近一期(2017年11月)TOP500前十名排名:

其中中国2台(前两名),日本3台,美国4台,欧洲1台。从榜单可以反映出两个特点:1、中国独占榜单头两位;2、美国第一次丢失了前四位;大名鼎鼎的Titan先后被瑞士的Piz Daint和日本的Gyoukou超越,落到第五的位置。

美国在高性能计算领域具有传统优势,是决不会让这种情况继续(IBM、Intel、Cray也不会,都是拿大单的机会啊)。为应对日益激烈的竞争压力,在学术大咖、商界领袖的共同游说下,美国能源部首先站里出来;在 2014 年启动的超算计划 CORAL,投入5.25亿美元,要帮助美国在超算领域夺回领头羊地位。

大洋彼岸的应对

CORAL是个什么项目呢?我们看看它的全称就明白了,这是个大块头。

CORAL = Collaboration of Oak Ridge, Argonne, and Lawrence Livermore

Oak Ridge,Argonne 和 Lawrence Livermore,他们代表美国能源部下属的三个国家实验室:橡树岭国家实验室(Oak Ridge National Laboratory,缩写为ORNL),阿贡国家实验室(Argonne National Laboratory,缩写为 ANL)和劳伦斯利佛摩国家实验室(Lawrence Livermore National Laboratory,缩写为 LLNL)。

这三个,应该是大家最熟悉的美国国家实验室了。橡树岭国家实验室和阿贡国家实验室都是源于大名鼎鼎的曼哈顿计划的一部分,之后分离出来成立的最早的大型美国国家实验室。劳伦斯利佛摩国家实验室(LLNL)名气稍差一点,但提到它的大表哥洛斯阿拉莫斯国家实验室,同为曼哈顿计划的一部分,知名度绝对高。这哥俩同为美国能源部所属,是美国两个为了X武设计而建立的部门。江湖传闻LLNL是为了制衡洛斯阿拉莫斯国家实验室一家独大而专门建立。

Collaboration

解释完后面三个单词“Oak Ridge, Argonne, and Lawrence Livermore”,我们再解释一下“Collaboration”代表着什么。
Collaboration的具体内容是三个国家实验室共同招标建造四台超级计算机,供各自科研使用。不差钱的标书发出来后,厂家纷纷响应。但建超算是技术活,不是谁都干得了的,结果不出意外;计算机巨头组团拿下了订单。

朋友圈一:IBM + NVIDIA + Mellanox,负责建造两台,合同金额 3.25亿美元。
朋友圈二:Intel + Cray,负责建造另外两台,合同金额2亿美元。

第一台:Summit

放置在橡树岭国家实验室,替代上文提到、现TOP500排名第五位的Titan超级计算机(Cray造,AMD Opteron + NVIDIA Tesla K20X);朋友圈一合作,采用:IBM Power9 + NVIDIA GPU + Mellanox IB方案,由IBM建造,计划2018年底交付。

Summit理论峰值150-300 PFLOPS,高于现在第一名的“神威·太湖之光”的125PFLOPS,预计会在18年底重新夺回TOP500第一名的宝座;不过还需要一个前提,“At that point, absent another surprise from China”。

第二台:Sierra

放置在劳伦斯利佛摩国家实验室(LLNL),替代原有的Sequoia超级计算机(IBM Blue Gene Q);Sierra就是缩小版的Summit,架构、技术完全一致,规模、配置部分缩水,同由IBM建造,计划2018年交付。

第三台与第四台:Theta & Aurora

这两台都放置在阿贡国家实验室,朋友圈二拿下。Intel为主承包商,Cray负责集成和建造; Theta采用Intel Xeon Phi KNL + Aries Interconnect,在2016年底已交付,理论峰值9.6 PFLOPS(实测5.88 PFLOPS),最新一期TOP500排名18;Aurora为大号的Theta,同样采用Intel Xeon Phi技术,设计峰值180 PFLOPS;由于Intel取消最近一代Xeon Phi产品,机器无法交付;该项目改为2021年,搭建美国首台E FLOPS(1000 PFLOPS)超级计算机。由于Intel Xeon Phi在交付上的风险,同时建两台超级计算机的好事,最终没有落到Argonne的身上。

下表为CORAL项目实际建造的3台超级计算机的硬件参数:

朋友圈一:IBM + NVIDIA + Mellanox

Summit & Sierra的体系结构可以看到:CPU + GPU的异构架构已经完全被超算领域认可。

RDMA(Remote Direct Memory Access)以其Zero-copy,bypass-kernel,Network Offload的特性,是超级计算机高速网络的最佳选择之一。其中最常见的实现有三种:RDMA over Converged Ethernet (RoCE), InfiniBand和 iWARP。其中InfiniBand在带宽、时延方面高于其他两种方式,在用户定制超算领域占有率最高。RoCE是构建在以太网(UPD协议)之上的RDMA实现,拥有更广泛的软硬件基础和成本优势,在数据中心及云上具有广泛的应用场景。带宽上,100Gb已经成为行业主流,超算已经向更高速度冲击。小号的Sierra虽然采用EDR(100 Gb)技术,但使用双网卡技术将最大带宽提升到200 Gb;Summit还没有交付,个人猜测直接采用200Gb HDR的可能性更高。

在处理器领域,IBM在与Intel的竞争中落了下风,但其以开放的态度,主动示好业内各领域领先企业,希望在超算、AI领域夺回10-20%的市场份额。如为了支持NVIDIA GPU,及更好的开源软件生态,Power9成为第一代原生支持小端的IBM处理器。同时,Power9 服务器中首先应用OpenCAPI,不但支持连接NVIDIA GPU (NVLink),也支持Google ASIC、Xilinx FPGA。

CAPI(Coherent Accelerator Processor Interface,统一加速器处理器接口)及其演进版本OpenCAPI(开放式高性能总线标准)集齐计算机领域多家巨头:IBM、Google、AMD、NVIDIA、Micron、Mellanox等,以开放的姿态得到了业内广泛的支持。OpenCAPI 标准总线最大的特点就是性能强劲,每个通道的数据都可达25Gbps,远远超过PCIe 3.0 的8Gbps,而且也支持多通道绑定。

朋友圈二:Intel + Cray

Intel在服务器CPU领域,处于完全领导地位,无论在性能、生态各方面远超对手;但超算领域加速卡方面,面对NVIDIA GPU的强势,Intel推出了Xeon Phi产品,想凭借支持原生x86架构,借力生态优势,再下一城。最近一期(2017年11月)TOP500排行榜中,采用Intel Xeon Phi的超算总共有29台,战绩中规中矩。同期NVIDIA GPU为87台;其余300多台为纯CPU无加速卡,还有极个别采用自研加速卡,如“神威·太湖之光”。

随着AI的崛起,GPU加速卡技术得到更快速的发展,Intel虽说取得了一些成绩,但势头上仍被NVIDIA压制,调整取消了最近一代Xeon Phi产品,聚集力量研制新产品,希望在AI方面取得新的突破。

在高速网络方面,Intel也是握有多张好牌;Intel在以太网领域积累深厚,有著名的82599网卡,同时也是RDMA over TCP (iWARP)技术主要推动者;2012年,Intel收购QLogic InfiniBand业务,基于这一技术又推出了Omni-Path Architecture(OPA),继续对Mellanox发起挑战,并已斩获了部分超算客户。同年,Intel还收购Cray旗下超级计算机互联技术团队,这个团队创造了两项互联技术,分别为Aries和Gemini。

在这个Intel主导的朋友圈里,凭借其超强硬件技术及广泛的业务线,在CPU、加速卡及高速网络全面PK三大计算巨头,实力令人仰慕。

我的思考

我国虽然多次占据了TOP500的头两位,但不能简单认为超算建设水平已领先其他国家,特别是美国。造成这种局面的一个主要原因是两国在建设超级计算机思路的不同:

美国是根据计算需求设计系统,需要多少计算能力就把超级计算机计算能力设计成多少;如上文提到的CORAL项目,由三大国家实验室主导建设,超算放置地和最终的用户都是各自国家实验室。

中国是通过立项建设,证明我们有能力、有财力建设世界第一的超级计算机也成为了项目的一大目标。建成后,建设方主要负责超算系统的运维,计算资源部分用以支撑国家重大项目,同时也向社会租售计算资源。

在超算建设方面,中国从技术实力上跟欧洲、日本都在一个水平线上,不超前,也不落后。美国还是一骑绝尘,特别在各个关键部件方面、大规模并行应用软件方面。

在并行软件方面,我们的差距远比硬件大,无论是科研领域,还是工业领域。软件水平的制约,各大超算中心大多存在单个并行作业规模较小,硬件资源闲置率较高。并且,各个中心均隶属于大学、研究院,市场竞争意识淡漠,服务意识不强。这种现状,也给了重视客户体验、服务质量高的云平台们在超算领域的更多机会。

CPU + GPU + RDMA的架构,在系统效率、可扩展性上展现出较大优势;并伴随着GPU生态完善、AI崛起等有利条件的推动,正在成为企事业单位自建超算平台的主要选择之一。云上超算平台紧跟趋势,借助阿里云弹性裸金属服务器(神龙)CPU/GPU + RoCE(RDMA over Converged Ethernet)的技术优势,迅速推出超级计算集群(Super Computing Cluster,缩写为SCC)产品(https://www.aliyun.com/product/scc )、开拓传统超算客户上云业务。

后记

本文介绍了超算硬件的简史及新一代的趋势,在软件方面Linux基金开源的超算项目 – OpenHPC位于行业主导地位。OpenHPC致力于为高性能计算构建一个开源框架,适应现在工业和学术研究的需求,创建一个稳定的 HPC 测试环境,为 HPC 环境创建一个开源框架,降低成本,开发一个全能的HPC软件栈适应各种应用,构建一个配置框架,开发者和用户可以灵活的选择 HPC 中他们需要的部分。

 

 

 

原文链接

本文为阿里云内容,未经允许不得转载。

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!