超级计算机

来自中文百科,文化平台
跳转至: 导航搜索
中国神威·太湖之光超级计算机(Sunway TaihuLight)是由国家并行计算机工程技术研究中心研制、安装在国家超级计算无锡中心的超级计算机。
克雷-2(Cray 2)——1985年至1989年时全球最快计算机

超级计算机英语:Supercomputer),指能够执行一般个人电脑无法处理的高速运算的计算机,规格与性能比个人计算机强大许多。现有的超级计算机运算速度大都可以达到每秒一(万亿,非百万)次以上。“超级计算”(supercomputing)这名词第一次出现,是在1929年《纽约世界报》关于IBM哥伦比亚大学建造大型报表机(tabulator)的报导。

1960年代,超级计算机由希穆尔·克雷(Seymour Cray)在Control Data Corporation里设计出来并领先市场直到1970年代克雷创立自己的公司──克雷研究。凭着他的新设计,他控制了整个超级计算机市场,并占据颠峰位置长达五年(1985年-1990年)。到了1980年代,正值小型计算机市场萌芽阶段,大量小型对手加入竞争。在1990年代中期,很多对手受不了市场的冲击而消声匿迹。今天,超级计算机成了一种由像IBM惠普等大型计算机公司所特意设计的计算机。虽然这些公司通过不断并购其他公司而增强了自己的经验,克雷研究依然是超级计算机领域的巨头之一。

历史

“超级计算机”一词并无明确定义,其含义随计算机业界的发展而发生变化。早期的控制数据公司机器可达十倍速于竞争对手,但仍然是比较原始的标量处理器。到了1970年代,大部分超级计算机就已经是向量处理器了,很多是新进者自行开发的廉价处理器来攻占市场。1980年代初期,业界开始转向大规模并行计算系统,这时的超级计算机由成千上万的普通处理器所组成。1980年代中叶,将适量的向量处理器(一般由8个到16个不等)联合起来进行并行计算成为通用的方法。1990年代以后到21世纪初,超级计算机则主要互联基于精简指令集张量处理器(譬如PowerPCPA-RISCDEC Alpha)来进行并行计算。

用途

超级计算机常用于需要大量运算的工作,譬如数值天气预报运算化学分子模型天体物理模拟、汽车设计模拟、密码分析等。

商用PC零件组装的超级计算机CLIC,于德国开姆尼茨工业大学

设计

超级计算机的创新设计在于把复杂的工作细分为可以同时处理的工作并分配于不同的处理器。他们在进行特定的运算方面表现突出,但在处理一般工作时却不那么优秀。他们的数据结构是经过精心设计来确保数据及指令及时送达——传递速度的细微差别可以导致运算能力的巨大差别。其输入/输出系统也有特殊设计来提供高带宽,但是这里的数据传输延迟却并不重要——超级计算机并非数据交换机。

根据阿姆达尔定律,超级计算机的设计都集中在减少软件上的序列化、用硬件在瓶颈上加速。

技术挑战及其解决方案

  • 超级计算机通常产生大量的高热,冷却超级计算机(英语原文为HVAC),即“heating, ventilation, and air conditioning”的首字母缩略字,中文直译为“加热、通风、空调”,是建筑技术领域的一个子领域,这里依照实际情形,略作“通风空调”,因为超级计算机运作时对加热的要求显然不高。}}是一个很大的问题。
  • 因为资料传送的速度不能比光快,几公尺的距离导致了几十奈秒的延迟,而克雷著名的环型设计保持了最短距离。
  • 超级计算机在短时间内消耗及生产大量的数据,需要投入很多资源确保资讯妥善传送及存取。

因超级计算机而开发的技术:

处理器技术

矢量处理因超级计算机而建立并用于高性能运算。矢量处理技术后来被用于普通计算机内的信号处理架构及单指令流多数据流,例如:电视游乐器及通用图形处理器等。

操作系统

一般的超级计算机都使用Unix类Unix操作系统,但在讲求绝对高效能的操作环境时,超级计算机开发人员会动用特别的轻量级核心(Light Weight Kernel-LWK),减少中断请求、行程间通讯等开销以提高效能。

轻量级核心包括Cray XT3的Catamount,Cray XT4的CNL (Compute Node Linux),以及IBM蓝色基因的CNK(Compute Node Kernel)。

编程环境

讯息传递介面及较旧的并列虚拟机器(PVM)常用于非共享内存系统(Distributed Memory System),而OpenMP常用于共享内存并行系统。

传统上Fortran的编译器可以产生比CC++更高效能目的码,所以Fortran仍然被使用作科学编程。

优化编译器

超级计算机需要编译器优化技术以产生优佳的目的码,现今的优化编译器都对向量化(Vectorization)、程序回圈内存阶层及数据局部性进行优化。

此外,优化编译器都以高层次的中间表示(Intermediate Representation)优化程序 - 包括Open64编译器的WHIRL、IBM XL编译器的Wcode。

数学函数库

超级计算机主要执行科学运算等拥有大量向量矩阵浮点计算的程序,因此优化常用的数学函数会提高运算效能。BLAS函数库使向量及矩阵浮点计算效能大大提高,而优佳化数学函数库则提高三角函数平方根等数学运算。

平行档案系统

平行档案系统属于分散式档案系统的一类,支援多客户端节点、多档案系统服务器,以及支援平行I/O(如MPI-IO、HDF5);现今流行的平行档案系统包括Lustre和PVFS。

网络技术

超级计算机节点之间的通信一般都需要使用高性能的网络介面,现今大多TOP500的超级计算机使用乙太网络(44.8%)及InfiniBand(41.8%)。

传统上InfiniBand比乙太网络有更高的带宽,同时因操作系统呼叫省略(Operating System Bypass)而提供更低的延迟时间(latency);然而2011年思科系统开发VFIO技术于超级计算机和丛集应用,使一般的乙太网络介面也能提供低延迟时间,从而提升乙太网络在超级计算机的应用层面。

通用超级计算机的类型

大致上可以分为三种:

根据摩尔定律及经济规模,一个现代的桌面计算机比15年前的超级计算机有更高性能,皆因某些超级计算机的设计已经放在桌面计算机内。再者,简单晶片的开发及生产成本比特意设计给超级计算机的更便宜。

超级计算机所处理的问题都适合并行化,当中减少处理单元之间的资料传送量。因此,传统的超级计算机可以被计算机丛集所代替。

最快的超级计算机

自1993年以来排名第一的计算机
公司 名称 国家和地区 时间
理化学研究所(RIKEN) 富岳 日本 2020.6 -
IBM 高峰 美国 2018.6 - 2020.6
国家并行计算机工程技术研究中心 神威·太湖之光 中国 2016.6 - 2018.6
国防科技大学 天河-2 中国 2013.6 -2016.6
克雷公司(Cray) 泰坦 美国 2012.11 - 2013.6
IBM 蓝色基因/Q 美国 2012.06 - 2012.11
理化学研究所(RIKEN) 日本 2011.6 - 2012.6
国防科技大学 天河-1 中国 2010.11 - 2011.6
Cray 美洲虎 美国 2009.11 - 2010.11
IBM 走鹃 美国 2008.06 - 2009.11
IBM 蓝色基因/L 美国 2004.11 - 2008.06
日本电气(NEC) 地球模拟器 日本 2002.06 - 2004.11
IBM ASCI White 美国 2000.11 - 2002.06
英特尔 ASCI Red 美国 1997.06 - 2000.11
日立 CP-PACS 日本 1996.11 - 1997.06
日立 SR2201 日本 1996.06 - 1996.11
富士通 数值风洞 日本 1994.11 - 1996.06
英特尔 Paragon XP/S140 美国 1994.06 - 1994.11
富士通 数值风洞 日本 1993.11 - 1994.06
TMC 模板:Le 美国 1993.06 - 1993.11

速度单位

超级计算机速度以每秒浮点运算次数"FLOPS"(floating-point operations per second)来作量度单位,常见的表示计算机中的峰值或速度用的单位英汉对照如下:

  • 一个MFLOPS(megaFLOPS)等于每秒100万(=106)次的浮点运算
  • 一个GFLOPS(gigaFLOPS)等于每秒10亿(=109)次的浮点运算
  • 一个TFLOPS(teraFLOPS)等于每秒1兆(=1012)次的浮点运算
  • 一个PFLOPS(petaFLOPS)等于每秒1千兆(=1015)次的浮点运算
  • 一个EFLOPS(exaFLOPS)等于每秒100京(=1018)次的浮点运算

此外,由于浮点积和熔加运算乘积累加是两次的浮点运算(每条FMA指令包括加/减及),因此当处理器支援FMA指令时,峰值是两倍每秒所能执行FMA指令的数目。

目前最快的超级计算机

截至2020年6月23日,目前全球最快的超级电脑是日本理化学研究所(Riken)与富士通(Fujitsu)共同研发的“富岳”(Fugaku)。“富岳”的运算能力是每秒415千兆次,和第二名的美国IBM超级电脑“高峰”(Summit)的148千兆次相差三倍。Fugaku采用了Arm架构为基础的富士通48核心A64FX SoC,共有158,976个节点,尖峰性能可达到1 exaflops(1,000 petaflops)这也是全球500大超级电脑中首次由Arm架构系统夺下第一名,除了在Linpack中拿到好成绩,Fukagu也在HPL-AI中获得1.421 exaflops。

目前最节能的超级计算机

截至2017年11月14号,世界上最节能的超级计算机是日本国立理化学研究所的菖蒲超级计算机B型。

过往的超级计算机

  • 2009年10月中国研制的第一台千万亿次超级计算机在湖南长沙亮相,全系统峰值性能为每秒1.206PFlops。这台名为天河一号的计算机位居同日公布的中国超级计算机前100强之首,也是当时世界上最快的超级计算机。天河一号的研制成功使中国成为继美国之后世界上第二个能够研制千万亿次超级计算机的国家。
  • 2008年11月,IBMRoadrunner成为当时最快的超级计算机,运算能力为1.105PFlops。
  • 2008年11月16日,美国Cray超级计算机公司推出美洲虎系列,运算能力为1.059PFlops,采用45376颗四核心的Opteron处理器,362TB的内存,传输总带宽284GB/Sec,硬盘容量超过10PB,内部的资料汇流排带宽532TB/Sec。这台计算机将放置在美国的国家高速计算机中心,并开放给各界有需要的团体申请使用。
  • 在地球模拟器之前,最快的超级计算机是美国加州罗兰士利物摩亚国家实验室的ASCI White,它的冠军位置维持了2.5年。

类超级运算

  • 某些分布式运算把丛集超级运算推至极限。例如SETI@home计划现在平均有667.716 TeraFLOPS运算能力。
  • GIMPS运算能力也高达18TFLOPS。

超级电脑时间线

年份 国家 超级电脑名称 FLOPS 地点
1942年 美国 Atanasoff–Berry Computer (ABC) 30 OPS 美国爱荷华州立大学
英国 TRE Heath Robinson 200 OPS 英国布莱切利园
1944年 英国 Flowers Colossus 5 kOPS 英国Dollis Hill Post Office Research Station
1946年 美国 UPenn ENIAC 100 kOPS 美国马里兰州战争部阿伯丁试基地
1954年 美国 IBM 模板:Le 67 kOPS 美国维珍妮亚州海军试验基地
1956年 美国 MIT TX-0 83 kOPS 美国麻省理工学院
1958年 美国 IBM AN/FSQ-7 400 kOPS 美国空军23号基地
1960年 美国 UNIVAC LARC 250 kFLOPS 美国加州罗兰士利物摩亚国家实验室
1961年 美国 IBM 7030 "Stretch" 1.2 MFLOPS 美国新墨西哥州洛斯阿拉莫斯国家实验室
1964年 美国 CDC 6600 3 MFLOPS 美国加州罗兰士利物摩亚国家实验室
1969年 美国 CDC 7600 36 MFLOPS
1974年 美国 CDC STAR-100 100 MFLOPS
1975年 美国 Burroughs ILLIAC IV 150 MFLOPS 美国加州NASA恩斯研究中心
1976年 美国 Cray-1 250 MFLOPS 美国新墨西哥州洛斯阿拉莫斯国家实验室
1981年 CDC Cyber 205 400 MFLOPS (世界很多地方)
1983年 美国 Cray X-MP/4 941 MFLOPS 美国新墨西哥州洛斯阿拉莫斯国家实验室
波音公司
1984年 苏联 М-13 (электронно-вычислительная
машина)M-13计算机
2.4 GFLOPS 苏联莫斯科计算机科学研究学院
1985年 美国 Cray-2/8 3.9 GFLOPS 美国加州罗兰士利物摩亚国家实验室
1989年 美国 ETA10-G/8 10.3 GFLOPS 美国佛罗里达大学
1990年 日本 NEC SX-3/44R 23.2 GFLOPS 日本府中市NEC府中厂
1993年 美国 Thinking Machines CM-5/1024 65.5 GFLOPS 美国新墨西哥州洛斯阿拉莫斯国家实验室
美国国家安全局
日本 Fujitsu Numerical Wind Tunnel 124.50 GFLOPS 日本国家宇航实验室
美国 Intel Paragon XP/S 140 143.40 GFLOPS 美国山迪亚国家实验室
1994年 日本 Fujitsu Numerical Wind Tunnel 170.40 GFLOPS 日本国家宇航实验室
1996年 日本 Hitachi SR2201/1024 220.4 GFLOPS 日本东京大学
日本 Hitachi/Tsukuba CP-PACS/2048 368.2 GFLOPS 日本筑波市筑波大学电算物理中心
1997年 美国 Intel ASCI Red/9152 1.338 TFLOPS 美国山迪亚国家实验室
1999年 美国 Intel ASCI Red/9632 2.3796 TFLOPS
2000年 美国 IBM ASCI White 7.226 TFLOPS 美国加州罗兰士利物摩亚国家实验室
2002年 日本 NEC地球模拟器 35.86 TFLOPS 日本地球模拟器中心
2004年 美国 IBM Blue Gene/L 70.72 TFLOPS 美国能源部IBM
2005年 美国 136.8 TFLOPS 美国能源部/NNSA/LLNL
美国 280.6 TFLOPS
2007年 美国 478.2 TFLOPS
2008年 美国 IBM Roadrunner 1.026 PFLOPS 美国新墨西哥州洛斯阿拉莫斯国家实验室
美国 1.105 PFLOPS
2009年 美国 ORNL 美洲虎 1.759 PFLOPS 美国橡树岭国家实验室
2010年 中国 天河一号 2.566 PFLOPS 中国天津国家超级计算天津中心
2011年 日本 RIKEN (K-Computer) 10.51PFLOPS 日本国立理化学研究所
2012年 美国 IBM Blue Gene/Q 16.32475PFLOPS 美国劳伦斯利福摩尔国家实验室
2012年11月13日 美国 ORNL Titan 17.59PFLOPS 美国橡树岭国家实验室
2013年 中国 天河二号 33.86 PFLOPS 中国广州国家超级计算广州中心
2016年 中国 神威·太湖之光 93.01 PFLOPS 中国无锡国家超级计算无锡中心
2018年 美国 高峰 122.3 PFLPOS 美国能源部所属实验室
2020年 日本 富岳 415.53 PFLPOS 日本兵库县神户市中央区
理化学研究所RIKEN电脑科学中心(R-CCS)

专用超级计算机

专用超级计算机都是针对单一问题而开发的计算机。这些计算机都使用专门编程的FPGA晶片及超大型密集晶片,纵然牺牲普遍性也要提高成本效能比率。它们被用于天文物理学及密码破解之上。

例子:

科幻中的超级计算机

  • Matrix-“母体”是电影《黑客任务》中,由机器所创造出的一个模拟环境,用以控制人类,并从人类身上吸取能源。
  • SkyNet-“天网”是电影《魔鬼终结者》中美国军方所开发具有人工智能的超级计算机,但后来它具有自我意识而以全人类为敌。
  • ARIIA-“爱莉亚”是电影《鹰眼》中美国军方所开发具有人工智能的超级计算机,但后来它以自我威胁判断而决心消灭美国既有领导阶层。
  • V.I.K.I.-“薇琪”是电影《机械公敌》中由美国USR公司所开发具有人工智能的超级计算机,但后来它以自我学习认定人类有自毁倾向,必须消灭所有威胁改由机器人监护才会有未来。
  • MAGI-“麦棋”是动漫《新世纪福音战士》中,设立于NERV总部由三台主机组成的超级计算机。MAGI是古代三贤人的称呼,他们是耶稣诞生的时候赠送耶稣礼物的东方三贤人。与使徒的对战中,用以判断使徒的降落点与分析使徒弱点,提供攻击方针以及成功机率做参考数值。特别的是将三个不同的人格加入了三个主机当中,分别是科学家、母亲、女性,在理性的计算之外也拟人的加入性格作为判断的依据。当判断有冲突时,三贤人系统会以投票机制做最后定夺。
  • HAL 9000-《2001年太空漫游》中主角鲍曼所乘搭的太空船发现号的主机,被安装了可以在必要时杀死乘员的功能。
  • TRANSLTR丹·布朗(Dan Brown)的小说-《数码密码》中美国国家安全局所暗中开发的超级计算机,主要用来监听网际网络封包,破解一切可能对国家安全造成威胁的加密讯息,包括加密的电子邮件,但是它的存在不被政府所承认。
  • Veda-“吠陀”是日本动漫《机动战士GUNDAM 00》中由雪儿·亚克斯迪卡(Chall Acustica)所整合的量子型计算机,由天人组织(Celestial Being)所使用,连接上地球所有网络,瞬间获得任何资讯,计算出预算方案。能与所谓“变革者”(Innovator)及原始变革者以脑量子波为媒介进行同步连接。
  • X.A.N.A,来自动漫Code Lyoko一台有人工智能的超级计算机,原用于计算,后用与摧毁军事机密,有倒转时空的能力。他的发明者后来发现此功能后不断使用,导致X.A.N.A不断自我升级。最后X.A.N.A通过计算得出结论:主宰地球。于是不断发动X.A.N.A的环境平台‘Lyoko’里的圆塔(开启后可用于计算使用并能实现虚拟事物现实化)通过电缆对人类进行破坏。后来它能够实体化,把‘lyoko’删除了,但是被潜伏在世界上其他超级计算机里的发明者发回了‘Lyoko’原资料,‘Lyoko’才得以重建。
  • 树状图设计者,来自日本动漫《魔法禁书目录》和《科学超电磁砲》中以分析气象资料为借口,搭载于织女星一号卫星上的超级计算机;每月会运算一次地球上所有空气粒子运动,可一次运算一个月的天气;其他日子就用来对学园都市的许多研究进行科研运算。在《魔法禁书目录》中被茵蒂克丝的魔法在太空中击毁,而其核心被回收之后被一方通行彻底摧毁。

相关

超级计算的历史和相关概念
其他计算机类型
超级计算机公司及产品

参见