云时代超级计算机的兴衰

云时代超级计算机的兴衰

时间:2020-4-25 作者:gykj

超级计算机是任何一种机制,无论是通过设计还是通过默认设置,其性能都可以使其在市场上的功能和信息上(无论是否有效)竞争。在整个历史中,曾经有几次备用处理器与自制基板拼凑而成,从而生产出了超级计算机。而且因为他们超强,他们才有资格。

另外:超级计算机:一直都是Linux

如今,超级计算性能不可能偶然实现。必须故意,有意地对它进行设计,并且对公司和国际政治都应有一定的容忍度。

超级计算市场的状况

云时代超级计算机的兴衰
(图片:ORNL卡洛斯·琼斯(Carlos Jones)摄影,由知识共享许可)

成为当今市场上的超级计算机,除了将现成的零件拼凑在一起之外,还需要做其他事情。现代系统是专为单一目的而设计的:并行处理。这与多任务处理不同,在多任务处理中,调度机制使用某种并发性来处理多个应用程序。

旨在用于个人计算机和数据中心服务器的普通多核处理器甚至可以集成在最快的超级计算机中。确实,在世纪之交,当时合格的大多数超级计算机机器都是由商用的现成(COTS)组件组成的。但是近年来,许多因素(一些相关,一些偶然的因素)混合在一起,以重新激发专门构建的超级计算机体系结构:

  • 摩尔定律与物理学相撞。英特尔创始人戈登·摩尔(Gordon Moore)最初观察到的经济原则表明,将晶体管“塞满”到较小空间​​的处理器上将是满足客户对更高产量的期望的好方法。有种种间接证据表明,这种进化处理器的方法,即使在某种程度上,即使不是很快,在物理上也可能不再可行。无论如何,英特尔近年来已从其经典的“滴答作响”生产节奏转变为依靠多层优质产品的更加细致入微的产品方法。这样一来,英特尔已将更多注意力放在其至强产品线的高性能方面,使性能再次成为“事物”。

另外:随着摩尔定律的减弱,英特尔放慢了主要芯片升级的速度

  • 互联网从软件中删除了包装器。 在PC时代,硬件和软件都包装在一起,因此与具有功能列表,玻璃纸包装和折扣价的包装盒中的应用程序相比,消费者很难判断高性能任务的结果。如今,世界上大多数功能(及其内容)都是通过Web交付的,因此消费者已经对软件的形象化理想感到更加自在。
  • 云将市场价值带回了独立功能。 一旦企业习惯于从诸如Amazon,Rackspace和GoGrid之类的服务提供商那里租用虚拟服务器,他们就会将业务功能视为开发人员通过Web培养的东西,而不是IT部门从一组磁盘中安装的东西。 。这改变了计算产品的性质,回到了最初的状态。

另外:“多云时代”是什么混合云,以及为什么您可能已经拥有一个

  • 全球变暖不可否认(行政推文中除外)。地球生活条件的迅速变化引起了人们对用于预测这些条件的系统的重新关注,特别是因为可怕后果的预计到达时间已从我们的后代一生跨越到我们的后代。

多年来,许多人争辩说,摩尔定律与超级计算性能无关,因为它处理的是处理器的晶体管数量,而不是巨型计算机的petaflops数量。但是,正如您稍后将看到的那样,多年来负责超级计算机开发的资金投入者已经做出了真正的努力,将著名的公式(每18个月将商用处理器的晶体管数量加倍)与超级计算机的定义联系起来,专门用于出口法规。

更重要的是,科学家和工程师积极参与了下一代最高性能机器的体系结构,包括所谓的“神经形态”系统和量子计算机,在过去三年中一直宣称自己生活在“后摩尔时代的超级计算”(PMES),并举行年度会议以帮助推动这一进程。

 

另外:什么是量子计算机,以及为什么需要更多

一千倍:Exascale重置目标职位

超级计算是世界上第一个计算机产业的现代后代。尽管超级计算机通常是展会的明星,但是在任何公开讨论中或诸如此类的文章中,超级计算机都是他们所做的工作,构成了行业的轴心。PC一直是企业。超级计算是一项工作。

劳伦斯·利弗莫尔国家实验室(Lawrence Livermore National Labs)的应用策略与计算物理学家贝特·斯蒂尔(Bert Still)在几年前的一次会议上说:“我们有比现在要解决的问题更好的问题。” “我们知道有些东西遗失了。我们知道事情随着时间的推移在变化,并且不断发展,这要求我们拥有比现在更好的,更高的保真度模型,这意味着我们需要更多的计算能力才能计算出这些楷模。”

超级计算机实际执行的工作是什么?

Still仍然确定要完成的工作是外推-从数据和模型中提取含义。超级计算机作业是一种情况的模型,通常是真实情况,以狂暴的速度获取数据。从事超级计算就是要相信算法的强大功能,可以从过程逻辑的重复实现中提取出有价值的有意义的信息。超级计算的基础是两个理想:一个宣称今天的机器最终将提供一种新的,非常有价值的解决方案,然后是第二个更微妙的观念,即今天的机器是明天的原型。

此外:美国再次拥有世界上最快的超级计算机

仍然指出,最后重要的是人们试图推断的内容。他说,您可以看一下今天的天气,但是不能从中推断出三个月后的天气报告。但是,您可以看看福岛核灾难,并且可以合理估算出该事件中的云何时到达美国西海岸。

斯蒂尔说:“您可以确定地解决一些问题,还有其他一些我们还真的不知道如何解决。因此,我们有许多大问题需要解决,并且需要同时使用两种模型。以及超出当今范围的计算能力。这的确是促使我们对百亿亿美元感兴趣的原因。”


必读

  • IBM超级计算助力全球天气预报模型
  • GPU计算:加速深度学习曲线

“百亿美元”的真实定义

Exascale不是品牌名称,超级计算机供应商或软件计划。更简单地说,这是一个目标。坦白说,这是任意的。就是这样:每秒进行五百亿次运算。这是一种数学的月球射击。2011年,奥巴马总统指示在2012财年联邦能源部预算中拨款1.12亿美元,用于致力于百亿亿次计算的政策支持项目。2018财年拨款约2.327亿美元。

另外:HPE宣布全球最大的基于ARM的超级计算机

即使使用超级计算机,也可能无法证明纳税人资金与超级计算机性能之间存在直接关系。但是表现已经扩大,美国在那场比赛中夺回了领先优势。2011年底,性能最高的美国超级计算机在全球500强中排名第3:由美国能源部橡树岭国家实验室(Oak Ridge National Laboratory)操作的Cray XT5,每秒约有1.759万亿浮点运算(1.76 petaflops)。富士通制造的日本机器在10.51 petaflops上排名第一;2.57的中国机器#2。

截至2018年11月,全球排名第一的超级计算机是橡树岭国家实验室(Oak Ridge National Laboratories)的“峰会”(图片来源:Creative Commons /摄,ORNL,Carlos Jones摄)

在2018年11月,IBM为Oak Ridge建造的名为Summit的计算机发布了143.5 petaflops的评分,而另一台针对Livermore Labs的IBM模型则发布了94.6。一台中国机器仅以93 petaflops勉强排名第三。

但这仍然离目标还差一点:一个exaflop或每秒1018次操作。这就是百亿亿美元的实际含义。美国能源部(DoE)计划在2018年由纳税人资助的项目开始实现亿亿美元级。

“要到2018年实现能力的这些增长,”在2010年[说明一个能源部发布PDF ],“在硬件和软件开发显著加速是必需的。这可以通过强化协同设计工作,其中系统架构,应用程序来完成软件设计师,应用数学家和计算机科学家进行交互工作,以表征并为计算科学发现创造环境,从而充分利用这些在计算能力方面的重要进步。”

确实正在进行协同设计工作。但近年来,它已被摩尔后时代的特遣队所占领。他们在一起致力于开发量子计算 -一种基于物理功能失常行为的理论技术,一旦出现,它将使当今的超级计算机在万分之一秒之内淘汰。

 

另外:美国现在声称世界上最快的两台超级计算机

什么是算法与应用程序的区别?

多年来,并行性一直与多任务混淆。您的PC和智能手机一直在努力执行多个应用程序。超级计算机的设计目的是为最古老(并且被许多人认为是最好的)计算机程序形式呈现结果:算法。(此名称是为了纪念9世纪的印度数学家Abu Ja’far Mohammed ibn Musa al-Khwarizmi,他引入了使用阿拉伯数字和小数点表示分数)。

它具有运行使计算机与计算器区别开来的算法的能力,从而解决了公式和算术问题。算法是一种逻辑过程,旨在通过相同的过程步骤序列,在给定任何形式的合理输入的情况下为情况提供解决方案。换句话说,按此顺序执行这些操作,无论您提供什么输入,您的输出都会是您想要的。算法具有以下特征:

  • 一组有限的步骤。 程序中的指令数量永远不会是无限的,但是算法中的步骤组可能会无限重复,这似乎很明显。因此,必须有一个退出子句-一个一旦满足便会停止重复的条件。
  • 明确的终止点。 算法知道何时完成以及何时达到解决方案。
  • 最少的步骤。 历史上最好的算法经过优化和完善,需要最少的操作。

第一台电子计算机实质上是为解决算法而定制的齿轮箱。在1950年代,对于他们的制造商来说,很明显,他们需要一个单独运行的程序-一个“操作系统”或“控制程序”,以将用户想要完成的工作与机器的基本功能区分开。当被问及操作系统和算法之间的区别时,工程师以这种方式进行了解释:算法旨在停止运行。操作系统设计为永不停止。

另外:当超级计算和人工智能遇到云时

由于算法在设计上是模块化的,因此非常适合并行处理。很容易确定可以从主线程中分叉哪些模块,进行复制(可能数千次)并并行执行,而这一切都不会破坏算法在达成解决方案时终止的主要条件。实际上,使用超级计算算法,程序员可以显式表达这些模块化边界,从而减轻了处理器的负担。

结果,所有计算机程序一旦编译为要由处理器执行的目标代码,便会利用以下任一功能:

  • 显式并行性 -程序对那些模块和其他程序组件的显式声明,这些模块和其他程序组件可以与程序的其余部分隔离,并根据需要复制到尽可能多的副本中,并同时执行;要么,
  • 隐式并行性 -处理器能够自行确定可以在何处分割,复制和并行处理部分代码。

当今超级计算竞赛的状态

500强名单,由曼海姆大学保持独立并公布半年度,实际上是对高性能市场的地理报告-空间超级计算机瓜分为自己和它们的主人,并在平等的程度组件制造商声称自己具有功能优势,并且与任何市场一样,具有最大的竞争价值。

超级计算机在此列表中赢得一席之地的竞争是基于称为Linpack的综合基准。多年来,人们争辩说,Linpack并不能代表此类机器如何执行实际任务。当然,如果给超级计算机赋予了真实的,真实世界的任务(例如模拟或预测),然后就性能进行了评判,则理由是,现实世界的任务是如此细微,不可能得出真实客观的结论。


必读

  • 我试图购买Nvidia的价值60,000美元的游戏机,但不能(CNET)
  • Raspberry Pi:升级35美元计算机的五种方法(TechRepublic)

所有“ FLOP / S”是关于什么的

Linpack以每秒数百万个浮点指令(兆触发器或MFLOP / s)的形式呈现其结果,其中浮点指的是一种表示内存中小数值的方法,类似于普通算术中的科学计数法。近年来,“前500强”将该结果乘以1000,因此更适合并列。因此,尽管列表中的领导者现在已经得分超过1000 teraflop,进入了petaflop(PFLOP / s)区域-每秒数万亿次操作,但现在它以千万亿次(TFLOP / s)的速度呈现值。

另外:Google的量子计算突破:我们的新芯片

截至2018年11月,最快的超级计算机(其测试结果被曼海姆大学确认)是Oak Ridge的“峰会”。结合IBM POWER9 CPU和Nvidia Volta GV100 GPU,Summit的确认性能得分为143.5 PFLOP / s。为了让您大致了解超级计算机的发展速度,仅在十年前,我就报道了DOE超级计算机突破1 petaflop标记的消息

但是在您意识到超级计算机市场是由500个左右的系统并驾齐驱以排名第一的想法之前,请考虑以下几点:2016年冠军的最佳成绩-中国双威TaihuLight,刚刚过去93 PFLOP / s-大约是现任领导者绩效的65%,尽管今天它仍然排名第三。从排名第20的位置到列表的底部,每个竞争者的得分都低于10 petaflop。从#431开始,得分低于1 petaflop。

第一台超级计算机是“ STRETCH”

1955年4月,IBM失去了为美国原子能委员会利弗莫尔实验室(Livermore Laboratory)建造计算机的一项重大竞标,而该项目的竞标者是雷明顿·兰德的UNIVAC部门。UNIVAC已承诺将处理能力提高到政府出价的五倍,因此IBM决定在下次有机会的时候也玩这种游戏。

当洛斯阿拉莫斯科学实验室(Los Alamos Scientific Laboratory)下次发布竞标请求时,IBM承诺夸耀的系统将以当前速度的100倍运行,并准备在本世纪末交付。这是“传统计算机”和超级计算机之间发生的绝对分歧:IBM致力于生产一种全新的计算机制,这是第一次完全被晶体管化。一直在争夺最快,最强大的机器,但是直到第一次分裂之前,市场就还没有开始走向成熟。在这种情况下,原子物理研究代表了与企业会计不同的客户群,并需要另一类机器。

超级计算机的概念可能是如何发明的

Stephen W. Dunwell是Stretch的首席工程师兼项目经理。在1989年口述历史采访明尼苏达州的查尔斯·巴贝奇研究所[大学PDF ],他回忆起召开全体员工大会,他参加,与传说中的IBM工程师吉恩·阿姆达尔和其他几个人一起。在那里,工程师和他们的经理集体意识到,如果IBM要重新获得与Sperry Rand等竞争对手的竞争优势,就需要在普通计算机之外的一类计算机。

另外:Red Hat Linux如何帮助收回最快的超级计算机称号

邓韦尔回忆说:“我们聚在一起,真正地从头开始,然后说:’在硬件,系统设计以及诸如此类的一切中可以做什么?” 我们的信念是,实际上,我们可以组装一台既可用于科学目的又可用于商业目的的机器-我们可以将这两者融合在一起,可以将两者融合在一起,还可以制造一台能够比任何现有机器都快得多,这将是一件非常可取的事情。”

C.戈登·贝尔(G.donor Bell)是为DEC开发VAX系列的杰出工程师,后来回想起[ PDF ],他的同类工程师早在1957年就开始使用“超级计算机”一词来指代上层机器。 7030项目正在进行中。

“拉伸”创造了超级计算空间

许多人说IBM 7030“ Stretch”是第一台超级计算机。图片:知识共享)

以前的IBM 701设计与新的IBM 7030之间的架构差距很大(左图),工程师将其称为“ Stretch”新系统。它介绍了指令“超前”和索引寄存器的概念,它们都是现代x86处理器设计的主要组成部分。尽管Stretch内部使用了64位“字”,但利用磁盘上的第一个随机存取存储机制,将这些字分解为8位字母数字段,这些段被工程师称为“字节”。

另外:超级计算机:一直都是Linux

尽管IBM在1961年至1963年之间成功制造并交付了8台7030型号,这本身就保持了第九名,但邓韦尔的上级却宣布这次失败仅比1955年的基准测试速度快30倍,而不是100倍。宣称自己制造的产品失败通常会促使其他人同意您,通常没有其他可行的理由。当竞争对手Control Data着手建立仅比IBM 7030快三倍的系统时,然后在1964年用CDC 6600实现了这一目标-主要由Seymour Cray设计-“超级计算机”的名字像胶水一样粘在它上面。(甚至在控制数据不复存在之前,该术语就已经附加到了Cray。)确实,CDC 6600(如下图所示)引入了向量处理-在多个寄存器上依次执行单个指令,这是并行化的开始。但是,今天没有计算机,甚至没有您的智能手机,也没有并行处理,也没有索引寄存器,预读指令预取或字节。

谁来决定超级计算机性能如何随时间扩展?

认为摩尔定律与超级计算机无关的人们会惊讶地发现实际上存在着直接的历史关联。美国商务部及其各机构经常很难为发布出口限制等重要事情定义超级计算机。当其性能基准测试已经使用了两年或更长时间时,鉴于“高性能”是一个不断发展的目标,因此很难确定两年前的受限产品是否今天仍应受到限制。

2000年,政府会计办公室做出判断,超级计算机每秒至少可产生850亿理论操作(85,000 MTOP / s)。当时,这并不是衡量观察到的性能的指标,实际上是对累积的单线程时钟速度(所有加在一起的CPU的兆赫或千兆赫)的委婉说法。

另外:升级的美国超级计算机在 CNET Top500列表中名列前茅

因此,当DoC和其他机构要求更新时,GAO便会提出建议,实际上是打印出超级计算“只是在利用可用的最快,最强大的计算机来解决复杂的计算问题”。

对摩尔定律的另一种误解

国防部别无其他明显选择,经常会参考摩尔定律。具体来说,研究人员将估算一个系统的总晶体管数,该系统的累积处理器周期总计为85 GHz,然后在2000年以来的每18个月(有时为24个)中将该晶体管数的增长率乘以200%。结果时钟速度将成为事实上的超级计算阈值。

当时,一台符合DoC最低标准的理论超级计算机可能由大约75个Intel Pentium III“ Coppermine”处理器组成,每个处理器的时钟频率为1.13 GHz。如果使用2900万个处理器,那么这种机器的处理器总数为21.75亿,每1个时钟周期有近2个晶体管的比率。

如果您觉得这听起来像是个荒唐的公式,请记住,它是由您的美国联邦政府带给您的。假设摩尔定律与时钟周期有关,则2018年左右的一台低级超级计算机的预计晶体管数应约为1188亿。

从堆的底部看性能如何扩展

在中国500强排行榜的最底端(就像在Indy 500排位赛中所说的那样,“冒泡”)是一台由中国的云服务提供商浪潮为其互联网服务提供商客户制造的机器。它由数台应信型号SA5212M4服务器组成,如左图所示,它们可以装入普通的2U机架单元中。整个系统由45,440个主频为4.8 GHz的Intel Xeon E5-2682v4服务器级处理器组成。使用DoC的方法,#500的重量应为218,112,000 MTOP / s(218,112 GHz)。

(事实证明,如果将“理论”运算转换为实际浮点运算,则#500的真实性能得分为874.8 TFLOP / s,这是DoC预期得分的4倍。)

尽管英特尔尚未正式发布该规范,但据估计E5-2682v4仅在一个芯片上就拥有72亿个晶体管。因此,排名500的处理器数量为327.1万亿。按照这种逻辑,超级计算机的性能将急剧下降。

另外:图片:世界上最快的25台超级计算机 TechRepublic

因此,让我们看一些实际的性能数字,并应用一些实际的逻辑。2011年11月,具有7236个CPU内核(当时并不是协处理器)的500号“泡泡机”的得分为50.9 teraflops。对于2018年11月,具有45,440 CPU内核(无GPU)的#500机器发布了874.8 teraflops。这是性能的17.2倍,处理器核心是6.3倍。

当然,2018年的核心比2011年的核心发展得多。但是,这项数学练习使我们更实际地了解了多少:在7年的时间里增加了大约3倍。如果您是超级计算机操作员,那么这意味着您可以期望今年的型号CPU将为您带来比去年更好的43%的性能。这也意味着如果您保持相同的配置,您的竞争对手用一个新的系统替换了一个使用了3年的系统,其机会甚至有可能翻倍。(不会)

图形处理器增压超级计算

列表中的所有超级计算机中有138个(将近28%)具有某种类型的加速或协同处理功能,其中有128个系统使用Nvidia GPU(本质上是图形协处理器,经过重新设计并重新配置为并行处理引擎)。这些系统中的约122个使用了Nvidia最初的2006 Tesla架构用于通用GPU,而排名第一的“ Summit”系统和排名第二的“ Sierra”系统(如下图所示)使用的是Nvidia的Volta微体系结构,其更多地面向AI应用。该平台上的第一个GPU(如上图所示)于去年5月推出,并于12月发布。

使GPU对台式机图形有效的原因是,它们可以复制一组指令,然后通过流水线路径将其馈送,从而使它们可以一次并行执行。最初,这使在3D场景中对三角形区域的较大部分进行着色变得容易,并且着色和渲染速度更快。

但是在世纪之交之后,学术研究人员开始针对不同目的进行GPU实验。他们利用了GPU的并行处理能力,而不是进行渲染,而是解决了复杂的算法。Nvidia于2006年开始发布可用于其GPU的软件库,从而使由CPU管理的程序能够轻松地将可复制算法委托给GPU。称为计算统一设备架构(CUDA),它的主要功能是运行时库(一个代表用户应用程序执行功能的附件程序),该库将例程编译为Nvidia所谓的“内核”,然后可以由GPU对其进行分发,通过其管道进行分发并在其中运行平行。它利用科学程序员对显式并行性的偏爱来创建一个在CPU和GPU之间传递并行算法的系统。

第二年,Nvidia意识到 CUDA激发了一个全新的市场。该公司开始制造通用协处理器引擎,Nvidia一度将其称为“台式超级计算机”。2009年,Nvidia确认GPU市场已超越图形市场,不再是利基市场,因此开始积极资助为CUDA平台做出贡献的组织。

另外:德克萨斯大学获得6000万$赠款超级计算机 CNET

GPU最终实现的成就,无非是作为一个行业和一门科学,超级计算的全部重生。在高端机器有可能成为低端处理器的复合体的时候,Nvidia将程序员的注意力重新集中在使超级计算首先成为可行行业的组件上:算法。反过来,这又使计算机供应商再次关心围绕它们执行的功能而不是所消耗的资源来设计计算机。

当今的超级计算机行业已经至少重新注入了一些精神,这些精神启发了诸如戈登·贝尔,斯蒂芬·邓威尔,吉恩·阿姆达尔和西摩·克雷等人。他们正在有意制造机器,并借用Dunwell的“信念”一词。因此,在个人计算机不再决定其架构目标的市场中,超级计算机可能已经重新发现了失去的领导角色。如果只花了万分之一秒,那么所有旧事物又都是新事物。

版权所有:https://www.eraycloud.com 转载请注明出处