超级计算机
超级计算机(英語:Supercomputer),指能够执行一般个人电脑无法处理的高速运算的计算机,规格与性能比个人计算机强大许多。现有的超级计算机运算速度大都可以达到每秒一兆(万亿,非百万)次以上。「超级计算」(supercomputing)這名詞第一次出現,是在1929年《纽约世界报》关于IBM为哥伦比亚大学建造大型制表机(tabulator)的报导。[1]
1960年代,超级计算机由西摩·克雷在控制数据公司裡设计出来并领先市场直到1970年代克雷创立自己的公司──克雷研究。凭着他的新设计,他控制了整个超级计算机市场,并占据颠峰位置长达五年(1985年-1990年)。到了1980年代,正值小型计算机市场萌芽阶段,大量小型对手加入竞争。在1990年代中期,很多对手受不了市场的冲击而消声匿迹。今天,超级计算机成了一种由像IBM及惠普等大型计算机公司所特意设计的计算机。虽然这些公司通过不断并购其他公司而增强了自己的经验,克雷研究依然是超级计算机领域的巨头之一。
歷史
「超级计算机」一词并无明确定义,其含义随计算机业界的发展而发生变化。早期的控制数据公司机器可达十倍速于竞争对手,但仍然是比较原始的标量处理器。到了1970年代,大部分超级计算机就已经是向量处理器了,很多是新進者自行开发的廉价处理器来攻占市场。1980年代初期,业界开始转向大规模并行计算系统,这时的超级计算机由成千上万的普通处理器所组成。1980年代中叶,将适量的向量处理器(一般由8个到16个不等)联合起来进行并行计算成为通用的方法。1990年代以后到21世纪初,超级计算机则主要互联基于精简指令集的张量处理器(譬如PowerPC、PA-RISC或DEC Alpha)来进行并行计算。
用途
超级计算机常用于需要大量运算的工作,譬如數值天气預報[2]、运算化学、分子模型、天體物理模拟[3]、汽車設計模擬[4]、密码分析等。
设计
超级计算机的创新设计在于把复杂的工作细分为可以同时处理的工作并分配于不同的处理器。他们在进行特定的运算方面表现突出,但在处理一般工作时却不那麼優秀。他们的数据结构是经过精心设计来确保数据及指令及时送达——传递速度的细微差别可以导致运算能力的巨大差别。其输入/输出系统也有特殊设计来提供高頻寬,但是这裡的数据传输延迟却并不重要——超级计算机并非数据交换机。
根据阿姆达尔定律,超级计算机的设计都集中在减少软件上的序列化、用硬件在瓶颈上加速。
技术挑战及其解决方案
- 超級计算机通常產生大量的高熱,冷卻超級计算机[註 1]是一個很大的問題。
- 因為資料传送的速度不能比光快,幾公尺的距离導致了幾十奈秒的延遲,而克雷著名的环型设计保持了最短距离。
- 超级计算机在短时间內消耗及生产大量的数据,需要投入很多资源确保资讯妥善传送及存取。
因超级计算机而开发的技术:
处理器技术
矢量处理因超级计算机而建立并用于高性能运算。矢量处理技术後来被用于普通计算机内的信号处理架构及单指令流多数据流,例如:家用游戏机及通用圖形處理器等。[5]
操作系统
一般的超級计算机都使用Unix或类Unix操作系统,但在講求絕對高效能的操作環境時,超級计算机開發人員會動用特別的輕量級核心(Light Weight Kernel-LWK),減少中断请求、行程間通訊等開銷以提高效能。[6]
輕量級核心包括Cray XT3的Catamount[7],Cray XT4的CNL (Compute Node Linux)[8], 以及IBM藍色基因的CNK(Compute Node Kernel)。[9]
编程環境
訊息傳遞介面及較舊的並列虛擬機器(PVM)常用於非共享內存系統(Distributed Memory System),而OpenMP常用於共享內存並行系統。[10][11]
傳統上Fortran的编译器可以產生比C或C++更高效能目的碼,所以Fortran仍然被使用作科学编程。
優化編譯器
超級计算机需要編譯器優化技術以產生優佳的目的碼,現今的優化編譯器都對向量化(Vectorization)、程式迴圈、記憶體階層及數據局部性進行優化。[12][13][14]
此外,優化編譯器都以高層次的中間表示(Intermediate Representation)優化程式 - 包括Open64編譯器的WHIRL、[15]IBM XL編譯器的Wcode。[16]
數學函数庫
超級计算机主要執行科學運算等擁有大量向量及矩陣浮點計算的程式,因此優化常用的數學函数會提高運算效能。BLAS函数庫使向量及矩陣浮點計算效能大大提高,[17][18]而優佳化數學函数庫則提高三角函數及平方根等數學運算。[19]
平行檔案系統
平行檔案系統屬於分散式檔案系統的一類,支援多客戶端節點、多檔案系統伺服器,以及支援平行I/O(如MPI-IO、HDF5);現今流行的平行檔案系統包括Lustre和PVFS。[20]
網路技術
超級计算机節點之間的通信一般都需要使用高性能的網路介面,現今大多TOP500的超級计算机使用乙太網路(44.8%)及InfiniBand(41.8%)。[21]
傳統上InfiniBand比乙太網路有更高的頻寬,同時因作業系統呼叫省略(Operating System Bypass)而提供更低的延遲時間(latency);然而2011年思科系統開發VFIO技術於超級计算机和叢集應用,使一般的乙太網路介面也能提供低延遲時間,從而提升乙太網路在超級计算机的應用層面。[22]
通用超级计算机的类型
大致上可以分为三种:
- 矢量处理机器能为大量数据同时进行同样的运算。
- 丛集式处理器特别建立连接处理器及记忆体的通信網路,非均匀访存模型就是最常见的。最快的超级计算机就是使用这个科技。
- 商品计算机丛集使用高頻寬低延误的網路来连接大量普通商品计算机,建設成一個计算机叢集。
根据摩尔定律及经济规模,一个现代的桌面计算机比15年前的超级计算机有更高性能,皆因某些超级计算机的设计已经放在桌面计算机内。再者,简单晶片的开发及生产成本比特意设计给超级计算机的更便宜。
超级计算机所处理的问题都适合并行化,当中减少处理单元之间的资料传送量。因此,传统的超级计算机可以被计算机丛集所代替。
最快的超级计算机
GREEN500 列表排名世界上最节能的超级计算机[24]
速度單位
超级计算机速度以每秒浮點運算次數"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指令的數目。[25]
目前最快的超级计算机
截至2022年6月1日,目前全球最快的超級電腦是AMD與美國能源局橡樹嶺實驗室合作打造的超級電腦「Frontier」,運算能力是1.102 ExaFLOPS,和二名的日本理化學研究所(Riken)與富士通(Fujitsu)共同研發的「富岳」(Fugaku)運算能力415.53 PFLPOS約2.6倍。「Frontier」採用AMD代號「Milan」的第三代EPYC伺服器處理器,搭配OCP加速器模組設計的Instinct MI250X加速繪圖卡構成,這也是超級電腦再次由x86架構奪下第一名。[26]
目前最节能的超级计算机
截至2017年11月14号,世界上最节能的超级计算机是日本国立理化学研究所的菖蒲超级计算机B型。[24]
过往的超级计算机
此條目需要更新。 (2019年2月7日) |
- 2009年10月,中国研制的第一台千万亿次超级计算机在湖南長沙亮相,全系统峰值性能为每秒1.206PFlops。这台名为天河一号的计算机位居同日公布的中国超级计算机前100强之首,也是當時世界上最快的超級计算机。天河一号的研製成功使中国成为继美国之后世界上第二个能够研制千万亿次超级计算机的国家。
- 2008年11月,IBM的Roadrunner成為當時最快的超級计算机,運算能力為1.105PFlops。
- 2008年11月16日,克雷公司推出美洲虎系列,運算能力為1.059PFlops,採用45376顆四核心的Opteron處理器,362太字節的記憶體,傳輸總頻寬284GB/Sec,硬碟容量超過10拍字節,內部的資料匯流排頻寬532太字節/秒。這台计算机將放置在美國的國家高速计算机中心,並開放給各界有需要的團體申請使用。
- 2007年11月,IBM的Blue Gene/L,运算能力為478.2 TFlops,安装了32768個处理器。它是PowerPC架构的修改版本,正式运作版本被推出到很多地点,包括罗兰士利物摩亚国家实验室。
- 在Blue Gene/L之前,最快的超级计算机是日本电气株式会社在横滨地球科学学院的地球模拟器。它由640个特别设计的8阶矢量处理器根据NEC SX-6架构所组成的丛集,使用Unix的修改版本。
- 在地球模拟器之前,最快的超级计算机是美国加州罗兰士利物摩亚国家实验室的ASCI White,它的冠军位置维持了2.5年。
类超级运算
- 某些分布式运算把丛集超级运算推至极限。例如SETI@home计划现在平均有667.716 TeraFLOPS运算能力。[27].
- 2009年4月,Folding@home声称拥有超過8PFLOPS运算能力。[28]
- GIMPS运算能力也高达18TFLOPS。
- Google的搜寻引擎系统Google數據中心总处理能力界乎于126及316TFLOPS之间。Tristan Louis估计这个系统等于32000至79000台双2 GHzXeon计算机[29]。由于散热问题,Google的搜寻引擎系统应该属于网格运算。
超級電腦時間線
年份 | 國家 | 超級電腦名稱 | 每秒浮點運算次數 | 地點 |
---|---|---|---|---|
1942年 | 美国 | 阿塔纳索夫-贝瑞计算机 | 30 OPS | 美國爱荷华州立大学 |
英国 | 電信研究機構希思·罗宾逊 | 200 OPS | 英國布萊切利園 | |
1944年 | 英国 | 湯米·佛勞斯巨人计算机 | 5 kOPS | 英國Dollis Hill Post Office Research Station |
1946年 | 美国 | 宾夕法尼亚大学電子數值積分計算機 | 100 kOPS | 美國馬里蘭州戰爭部阿伯丁試基地 |
1954年 | 美国 | 國際商業機器公司NORC | 67 kOPS | 美國維珍妮亞州海軍試驗基地 |
1956年 | 美国 | 麻省理工学院TX-0 | 83 kOPS | 美國麻省理工學院 |
1958年 | 美国 | 國際商業機器公司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年 | 美国 | 巴勒斯ILLIAC IV | 150 MFLOPS | 美國加州艾姆斯研究中心 |
1976年 | 美国 | 克雷1號 | 250 MFLOPS | 美國新墨西哥州洛斯阿拉莫斯國家實驗室 |
1981年 | CDC Cyber 205 | 400 MFLOPS | (世界很多地方) | |
1983年 | 美国 | 克雷X-MP/4 | 941 MFLOPS | 美國新墨西哥州洛斯阿拉莫斯國家實驗室,波音公司 |
1984年 | 苏联 | 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年 | 美国 | 思維機器公司Connection Machine-5/1024 | 65.5 GFLOPS | 美國新墨西哥州洛斯阿拉莫斯國家實驗室;美國國家安全局 |
日本 | 富士通Numerical Wind Tunnel | 124.50 GFLOPS | 航空宇宙技術研究所 | |
美国 | 英特尔Intel Paragon XP/S 140 | 143.40 GFLOPS | 美國桑迪亚国家实验室 | |
1994年 | 日本 | 富士通Numerical Wind Tunnel | 170.40 GFLOPS | 航空宇宙技術研究所 |
1996年 | 日本 | 日立製作所Hitachi SR2201/1024 | 220.4 GFLOPS | 日本東京大學 |
日本 | 日立製作所/築波大學 CP-PACS/2048 | 368.2 GFLOPS | 日本築波市築波大學電算物理中心 | |
1997年 | 美国 | 英特尔ASCI Red/9152 | 1.338 TFLOPS | 美國桑迪亚国家实验室 |
1999年 | 美国 | 英特尔ASCI Red/9632 | 2.3796 TFLOPS | |
2000年 | 美国 | 國際商業機器公司ASCI White | 7.226 TFLOPS | 美國加州勞倫斯利佛摩國家實驗室 |
2002年 | 日本 | 日本電氣地球模擬器 | 35.86 TFLOPS | 海洋研究开发机构 |
2004年 | 美国 | 國際商業機器公司藍色基因/L | 70.72 TFLOPS | 美國能源部;國際商業機器公司 |
2005年 | 美国 | 136.8 TFLOPS | 美國能源部/NNSA/LLNL | |
美国 | 280.6 TFLOPS | |||
2007年 | 美国 | 478.2 TFLOPS | ||
2008年 | 美国 | 國際商業機器公司走鹃 | 1.026 PFLOPS | 美國新墨西哥州洛斯阿拉莫斯國家實驗室 |
美国 | 1.105 PFLOPS | |||
2009年 | 美国 | 橡樹嶺國家實驗室美洲虎 | 1.759 PFLOPS | 美國橡樹嶺國家實驗室 |
2010年 | 中国 | 天河一號 | 2.566 PFLOPS | 中国天津国家超级计算天津中心 |
2011年 | 日本 | RIKEN 京(K-Computer) | 10.51PFLOPS | 日本国立理化学研究所 |
2012年 | 美国 | 國際商業機器公司藍色基因/Q | 16.32475PFLOPS | 美國勞倫斯利福摩爾國家實驗室 |
2012年11月13日 | 美国 | 橡樹嶺國家實驗室泰坦 | 17.59PFLOPS | 美國橡樹嶺國家實驗室 |
2013年 | 中国 | 天河二号 | 33.86 PFLOPS | 中国广州国家超级计算广州中心 |
2016年 | 中国 | 神威·太湖之光 | 93.01 PFLOPS | 中国无锡国家超级计算无锡中心 |
2018年 | 美国 | 高峰 | 122.3 PFLPOS | 美国能源部所属实验室 |
2020年 | 日本 | 富岳 | 415.53 PFLPOS | 日本神戶市中央區理化學研究所RIKEN電腦科學中心(R-CCS) |
2022年 | 美国 | Frontier | 1.102 EFLOPS | 美国能源部所属实验室 |
专用超级计算机
专用超级计算机都是针对单一问题而开发的计算机。这些计算机都使用专门编程的FPGA晶片及超大型密集晶片,纵然牺牲普遍性也要提高成本效能比率。它们被用于天文物理学及密码破解之上。
例子:
- 深蓝,专门用于分析国际象棋
- GRAPE,天文物理
- Deep Crack,DES解码器
科幻中的超级计算机
- 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』才得以重建。
- 树状图设计者,来自日本动漫《魔法禁书目录》和《科學超電磁砲》中以分析气象资料为借口,搭载于织女星一号卫星上的超级计算机;每月会运算一次地球上所有空气粒子运动,可一次运算一个月的天气;其他日子就用来对学园都市的许多研究进行科研运算。在《魔法禁书目录》中被茵蒂克丝的魔法在太空中击毁,而其核心被回收之后被一方通行彻底摧毁。
注释
參考文獻
- ^ 中国超级计算机重返世界之巅 互联网档案馆的存檔,存档日期2013-06-22.,亚太日报,2013年6月17日
- ^ (繁體中文)引入全球及區域譜模式作季度預報 (PDF). 香港天文台. 2007年1月. (原始内容存档 (PDF)于2011-11-03).
- ^ (简体中文)行星流體動力學大規模計算的性能測試與分析 (页面存档备份,存于互联网档案馆)
- ^ (中文)GPU加速計算功能應用 (MP4). 上海汽車工業(集團)總公司. 2011年12月. (原始内容存档于2012-01-18).
- ^ (简体中文)基于延迟隐藏因子的GPU计算模型 (A GPU Computational Model Based on Latency Hidden Factor) (页面存档备份,存于互联网档案馆)
- ^ (简体中文)周龍,殷紅武,朱建濤. 輕量級核心在HPC中的應用現狀研究: p. 4. 2009-09-10.
- ^ (英文)Software Architecture of the Light Weight Kernel, Catamount (页面存档备份,存于互联网档案馆)
- ^ (英文)Compute Node Linux: New Frontiers in Compute Node Operating System 互联网档案馆的存檔,存档日期2012-02-12.
- ^ (英文)IBM System Blue Gene Solution: Application Development (页面存档备份,存于互联网档案馆)
- ^ (英文)Message Passing Interface (MPI) (页面存档备份,存于互联网档案馆)
- ^ (英文)OpenMP (页面存档备份,存于互联网档案馆)
- ^ (英文)Kaufmann, Morgan. Optimizing Compilers for Modern Architectures: A Dependence-based Approach. 2001. ISBN 978-1558602861.
- ^ (英文)A Study of loop nest structures and locality in scientific programs (页面存档备份,存于互联网档案馆)
- ^ (英文)Code and data transformations for cache locality and parallelism (页面存档备份,存于互联网档案馆)
- ^ (英文)Open64 Compiler Whirl Intermediate Representation (页面存档备份,存于互联网档案馆)
- ^ (英文)An Incomplete Survey of Compiler Technology at the IBM Toronto Laboratory (页面存档备份,存于互联网档案馆)
- ^ (简体中文)BLAS庫在多核處理器上的性能測試與分析 (页面存档备份,存于互联网档案馆)
- ^ (英文)Anatomy of High-Performance Matrix Multiplication 互联网档案馆的存檔,存档日期2010-06-14.
- ^ (英文)Innovation Impact: The IBM MASS Libraries: High-Performance Processor-Tuned Mathematical Functions (页面存档备份,存于互联网档案馆)
- ^ (英文)Lustre Publications (页面存档备份,存于互联网档案馆)
- ^ (英文)TOP500 Statistics 互联网档案馆的存檔,存档日期2012-11-02.
- ^ (英文)SC'11 Cisco booth demo: Open MPI over Linux VFIO (页面存档备份,存于互联网档案馆)
- ^ (英文)TOP500 Supercomputing Sites (页面存档备份,存于互联网档案馆)
- ^ 24.0 24.1 November 2017 | TOP500 Supercomputer Sites. www.top500.org. [2017-11-24]. (原始内容存档于2020-06-17) (英语).
- ^ Eijkhout, Victor. Introduction to High Performance Scientific Computing (PDF). 2011: Page 9 [2012-01-02]. ISBN 978-1-257-99254-6. (原始内容 (PDF)存档于2019-09-19).
- ^ AMD 與美國能源局橡樹嶺實驗室打造的「Frontier」超級電腦 擊敗日本 Arm 架構超級電腦「富岳」 奪最快頭銜. [2022-06-01]. (原始内容存档于2022-05-31).
- ^ SETI@Home积分一览. [2010-08-28]. (原始内容存档于2011-07-03).
- ^ Folding@Home. [2010-08-28]. (原始内容存档于2012-09-21).
- ^ How many Google machines. TNL.net. [2010-08-28]. (原始内容存档于2008-07-24).
外部链接
- 超级计算资源
- 超级计算中心及组织
- (简体中文) 上海超級計算中心
- (繁體中文)国家高速网路与计算中心 (页面存档备份,存于互联网档案馆)——位于台湾新竹市,是中华民国国家实验研究院的附属机构。
- (英文) 勞倫斯利福摩爾國家實驗室 (LLNL)高性能計算主頁 (页面存档备份,存于互联网档案馆)——位於美國的勞倫斯利福摩爾國家實驗室
- (英文) HPCx (页面存档备份,存于互联网档案馆)——英国超级计算机服务,由EPCC及Daresbury实验室营运
- (简体中文) 国家超级计算无锡中心(神威·太湖之光)
参见
- 超级计算的历史和相关概念
- 其他计算机类型
- 超级计算机公司及产品