付昊桓 黃寫勤 趙祎 張金瀟 楊廣文
最近的10年是中國超級計算(簡稱超算)蓬勃發(fā)展的10年。在2018年的兩院院士大會上,超級計算成為習近平總書記講話中,戰(zhàn)略高技術發(fā)展的一個重要成果體現(xiàn):“超級計算機連續(xù)10次蟬聯(lián)世界之冠,采用國產(chǎn)芯片的‘神威·太湖之光獲得高性能計算應用最高獎‘戈登·貝爾獎”。
電子計算機誕生之初,由于造價昂貴,只有大型的科研機構或商業(yè)公司才有使用條件。通常意義上的第一臺電子計算機ENIAC[1],就是由美國軍方的彈道研究實驗室資助設計的一臺基于真空管的計算系統(tǒng),它可以自動進行乘法和累加。盡管ENIAC的本來目的是為了計算火炮系統(tǒng)的彈道表,但馮·諾依曼(J. von Neumann)等當時就利用這臺系統(tǒng)進行了氫彈研制以及數(shù)值天氣模擬等開創(chuàng)性的科學計算工作。
隨著1950—1960年代集成電路技術的逐漸發(fā)展,處理器的設計和制造逐漸成為可能。超級計算機也在這個時期迎來重要發(fā)展。由于彼時處理器硬件以及計算軟件的研發(fā)都處于萌芽時期,并沒有太多規(guī)則和兼容性的束縛,享有“超級計算機之父”之稱的克雷(S. Cray)在早期提出了很多天才的構想,比如超級計算機CDC6600系統(tǒng)[2]中中央處理器(CPU)和輔助處理器(PPU)的協(xié)同設計,以及Cray-1計算機[3]中專門針對科學計算的大規(guī)模數(shù)組操作的向量處理器設計。這些設計理念直到現(xiàn)在仍在不同的計算系統(tǒng)中沿用、集成和重新發(fā)展。
從CDC6600誕生的1964年,到幾乎整個1970年代,超級計算機都沿用了類似的結構,即整個系統(tǒng)僅靠一個或者幾個強勁的處理器來支撐,每個處理器內(nèi)部都有復雜的單元設計和功能。
直到1980年代,超級計算機發(fā)展的另一條路徑才開始逐步顯現(xiàn)。在超級計算機的復雜向量處理器發(fā)展的同時,集成電路技術催生下的微處理器[如英特爾(Intel)早期的4004和8008]和個人電腦也在迎來日新月異的變化。相較于成本高昂、通用性低的向量處理器,盡管微處理器單個的性能無法與之相比,但通過網(wǎng)絡來集成大量價格低廉、標準化生產(chǎn)的微處理器卻可以實現(xiàn)更高的計算性能。1981年,加州理工學院的研究者采用64個Intel 8086處理器,通過六維超立方的互聯(lián),建成了Cosmic Cube系統(tǒng)[4]。此后,英特爾的iPSC系統(tǒng)、麻省理工學院研發(fā)的CM(Connection Machine)系統(tǒng)、日本富士通研發(fā)的風洞模擬器等集成了成百上千個處理器的大規(guī)模并行處理機開始不斷涌現(xiàn),并提供了比原來的向量處理器更高的計算性能。
在此過程當中,科學計算領域仍對是否能夠駕馭如此大規(guī)模的并行機器存在深深的疑慮。根據(jù)阿姆達爾定律的分析,如果一個程序中有10%的部分無法并行,那么即使采用1000個處理器,最多也就是把剩下90%的時間優(yōu)化到可以忽略不計,所獲得性能加速比(加速比指同一個任務在單處理器系統(tǒng)和并行處理器系統(tǒng)中運行消耗的時間的比率)最多是10倍。那么幾百個甚至幾千個處理器是否能夠獲得相應的性能收益,這是有疑問的。1985年底,卡普(A. Karp)在郵件中發(fā)起挑戰(zhàn),如果任何人能在并行機上取得一個科學計算軟件200倍以上的加速,他將私人支付100美元的獎金。1987年,計算機領域的著名研究者戈登·貝爾(Gordon Bell)正式設立了“戈登·貝爾獎”來獎勵和跟蹤超級計算機上最頂尖的應用成果,當年的獲獎者就在由1024個節(jié)點組成的nCube系統(tǒng)[5]上獲得了400到600倍的性能提升。
此后近30多年里20多屆“戈登·貝爾獎”的評定和頒發(fā),見證了超級計算機和依托于超級計算機的高性能計算應用的飛速發(fā)展,也成為了國際超算應用領域的最高獎項。從頭幾年每秒十億次浮點運算左右的應用性能,到2021年量子電路模擬超過每秒400億億次浮點運算的應用性能,無論是超級計算機硬件所能提供的計算能力,還是高性能計算軟件的相關技術,都取得了長足的進步。
業(yè)界都說超級計算機是科技領域皇冠上的明珠,因為它的建設需要電子芯片、計算機系統(tǒng)、內(nèi)存、存儲、電源和冷卻系統(tǒng),以及基礎軟件、應用軟件等方面的技術積累和集成。需要在方方面面都做到高水準,才能集成出一臺世界領先的超級計算機。
作為超級計算機,首先它的“超級”體現(xiàn)在異乎尋常的計算速度上。由于幾乎所有的科學計算軟件都采用浮點數(shù)作為基本的數(shù)據(jù)格式,浮點運算操作(浮點數(shù)的加減乘除)就成為衡量計算復雜度和計算量的基本單位。每秒能進行的浮點運算次數(shù)則成為衡量一臺計算機計算速度的通用指標。可以說,現(xiàn)階段超算系統(tǒng)的速度比科幻作家大開“腦洞”能想到的速度還要快。著名科幻作家劉慈欣在《三體》中是這樣描述世界最強大計算機的:每秒可以進行500萬億次浮點運算。其實,在2008年,當時世界排名第一的超級計算機——美國“走鵑”[6],就已經(jīng)達到每秒1000萬億次浮點運算的速度。無錫的“神威·太湖之光”[7]超級計算機持續(xù)性能達到每秒9.3億億次,是三體世界的整整186倍?,F(xiàn)實已經(jīng)超越了科幻!
第二個“超級”就體現(xiàn)在它超級大的并行規(guī)模上。目前主流的技術路線是通過精妙的系統(tǒng)設計和高速的網(wǎng)絡互連把眾多計算資源集聚成一個整體,從而獲得超級快的計算速度。與初期幾千個或幾萬個核心組成的系統(tǒng)相比較,“神威·太湖之光”集聚了上千萬個計算核心。如果把一個計算核心比作一個人的話,這臺計算機就相當于一個具有千萬人口的超級大都市??梢韵胂?,要讓這1000萬人齊心協(xié)力,擰成一股繩,來解決一個科學或工程的問題,每個人不僅要負責自己的計算,還要跟其他人交換數(shù)據(jù),不能“堵車”、不能“宕機”,還要考慮散熱、供電、穩(wěn)定性等方面的問題,這將是一個巨大的挑戰(zhàn),需要方方面面的技術創(chuàng)新才能達成。
第三個“超級”體現(xiàn)在解決的“超級”問題上。超級計算機的核心功能就是通過數(shù)值模擬或者是數(shù)據(jù)分析,在數(shù)字世界中拓展人類探索未知世界的能力。大到浩瀚的宇宙,小到分子、原子的模擬,在宇宙的起源和演化、全球氣候變化、藥物和材料的研發(fā)、飛機發(fā)動機的仿真等科學或工程的前沿領域,超級計算機以及它所支撐起的數(shù)字能力,都發(fā)揮著不可或缺的作用。特別是對于全球最頂尖的超算系統(tǒng),計算能力每往前走一步,就意味著在這些領域里可以計算更大或更復雜的問題:嘗試一個更復雜的設計或場景,或是把不可能變?yōu)榭赡堋?/p>
另一個不容忽視的特點,就是超級計算機在解決“超級”問題時,日益體現(xiàn)出來的強烈的交叉性。人類社會當前面臨的科學技術和工程問題大多涉及多個學科,需要不同背景的科學家一起解決。單是全球氣候變化和應對的研究,就涉及了大氣、海洋、生態(tài)、遙感、大氣化學、全球變化經(jīng)濟學等不同學科。而基于超算的計算軟件,因為其具有靈活性,可以將不同領域的新發(fā)現(xiàn)和新認識集成到一個工具中,形成了一個多學科知識交叉和沉淀的平臺。而這樣的特性,對超算軟件的研發(fā)人員提出了很高的要求。
近10年中國超算快速發(fā)展的背后是慈云桂、金怡濂先生等一批老一輩超算工作者熬更夙夜、接續(xù)奮斗打下的堅實基礎。
嚴格來講,中國的計算機起步并不算晚,通過學習蘇聯(lián)的技術,1958年就生產(chǎn)出第一臺數(shù)字電子計算機——103機[8]。但之后因為國內(nèi)外形勢的變化,直到1978年3月在全國科學技術大會上,鄧小平同志提出 “中國要搞四個現(xiàn)代化,不能沒有巨型機”,中國超級計算機事業(yè)才又重新啟動起來,但彼時與西方發(fā)達國家相比,差距已經(jīng)拉大。
手握超級計算機領先技術的西方國家,對包括中國在內(nèi)的發(fā)展中國家實行了長期的嚴格管制,嚴禁出口相關的高端技術和產(chǎn)品。此外,由于超算平臺可以支撐眾多與國家安全等戰(zhàn)略密切相關的計算任務,1980—1990年代,在國內(nèi)的石油及氣象行業(yè)中,研究人員使用購置的美國超算系統(tǒng)時,需要放在玻璃房內(nèi),由美方人員監(jiān)管使用情況。這樣的玻璃房深深刺痛著我國超算領域的研發(fā)人員,他們立志要造出自己的超級計算機。直到“銀河”“曙光”等國產(chǎn)超級計算機研制成功后,西方才解除對中國高性能計算機的出口限制。
40年間,從初代的“銀河”“曙光”到近10年中連續(xù)5年占據(jù)世界第一的“天河”和“神威”,中國在超級計算機方面發(fā)展迅速,從空白走向與美日媲美,成為繼美國、日本之后第三個能獨立設計和研制世界頂尖超級計算機的國家。2021年世界超級計算機500強榜單中,中國共有186臺上榜,數(shù)量排行第一。這是2017年11月以來,中國超級計算機上榜數(shù)量連續(xù)8次位居第一。
在超算硬件平臺迅速發(fā)展的基礎上,我國的超算軟件也在地球科學、生物信息、工業(yè)仿真、材料科學、人工智能等多個領域有了長足進步。在“戈登·貝爾獎”頒發(fā)的前29年里,該獎項一直被美國和日本科學家所壟斷。直到2016年,中國科學院軟件所、清華大學、北京師范大學、國家并行中心等單位的聯(lián)合團隊,終于填補了空白,以千萬核可擴展的大氣動力方程求解器[9]獲得這一獎項。
2021年,清華超算團隊作為核心成員第三次斬獲“戈登·貝爾獎”,一舉打破了美國谷歌公司此前宣稱的“量子霸權”神話。
“量子霸權”是一個術語,表示量子計算設備在某些應用場景中,可以表現(xiàn)出傳統(tǒng)計算機無法企及的性能優(yōu)勢。谷歌公司2019年研發(fā)的“懸鈴木”系統(tǒng)在200秒內(nèi)完成的百萬量子采樣(保真度0.2%),美國最快的頂點超級計算機需要一萬年才能模擬完成。時間上的差異高達10億倍。中國超算團隊憑借研發(fā)的超大規(guī)模量子隨機電路模擬器[10],實現(xiàn)了近實時的量子模擬,提出的近似最優(yōu)的張量網(wǎng)絡并行切分和收縮方法及混合精度算法,可高效擴展至數(shù)千萬核并行規(guī)模,并提供每秒4.4百億億次的持續(xù)計算性能,是目前已知的超算領域最高混合精度浮點計算性能,也證明了谷歌2019年演示的隨機量子線路采樣任務并不能真正實現(xiàn)“量子霸權”。這又是一項多學科交叉的成果,它集聚了計算機、數(shù)學、量子物理等多個領域研究者的共同努力,促進了傳統(tǒng)超算和量子計算的共同發(fā)展。對于傳統(tǒng)超算而言,新型量子計算機所形成的“量子霸權”是“他山之石”。在傳統(tǒng)超算上實現(xiàn)這樣一個復雜度極高的問題,觸發(fā)了算法、并行方法、優(yōu)化方法等各個方面的創(chuàng)新。而近實時的量子電路模擬,則真正建立了最先進的量子計算機和最先進的超算之間的橋梁,讓它們可以相互促進,甚至相互融合。
獲得超算領域最高獎,對于中國超算的發(fā)展而言,是一個重要的里程碑,更是一個新的開始。
根據(jù)功能劃分,超級計算可分為尖端超算、通用超算、業(yè)務超算以及人工智能超算等幾大類。在國家扶持和應用場景擴展下,2021年,我國超級計算服務規(guī)模已經(jīng)達到196.6億元,預計2026年將增長至500億元。
雖然我國超算已經(jīng)取得了一定的成績,超級計算機數(shù)量位居全球第一,但近年來美國、日本等國也在不斷提升自身實力。今年5月底,國際組織“TOP500”公布了2022年上半年全球超級計算機500強榜單,美國超級計算機“前沿”首次上榜并位列榜首,日本超級計算機“富岳”降至第2位,“神威·太湖之光”和“天河二號”分別位居第6位和第9位。 “前沿”的運算能力超過“神威·太湖之光”12倍,達到每秒100億億次,是全球首臺每秒能執(zhí)行百億億次浮點運算的超級計算機。
為了在超算領域中保持競爭力,自2016年開始,我國陸續(xù)發(fā)布了一系列政策支持超算的發(fā)展,把超算列入《國民經(jīng)濟和社會發(fā)展十四個五年規(guī)劃和2035年遠景目標綱要》《十四五數(shù)字經(jīng)濟發(fā)展規(guī)劃》等國家重大規(guī)劃當中,強調(diào)要聚焦高端芯片、操作系統(tǒng)、人工智能關鍵算法、傳感器等關鍵領域,加快推進基礎理論、基礎算法、裝備材料等研發(fā)突破和迭代應用;明確表示要加快構建全國一體化大數(shù)據(jù)中心體系,建設E級和10E級超級計算中心(E級超級計算指每秒可進行百億億次運算的超級計算機,是國際上高端信息技術創(chuàng)新和競爭的制高點,被公認為“超級計算機界的下一頂皇冠”);提出加快實施“東數(shù)西算”工程等舉措。僅是“東數(shù)西算”工程,其歷史意義和戰(zhàn)略價值將與西氣東輸、南水北調(diào)等世紀工程相媲美。這些舉措的目的就是從國家戰(zhàn)略、技術發(fā)展、能源政策等多方面出發(fā),構建一個全方位的超算發(fā)展體系。
針對國產(chǎn)高端芯片,國家已經(jīng)提出2025年芯片沖刺70%自給率的目標。在政策上,除了對集成電路領域企業(yè)給予“10年免稅”優(yōu)惠政策外,還設立專項扶持基金、放寬所得稅限度、貸款貼息等扶持政策,給國產(chǎn)芯片企業(yè)留存了加快發(fā)展的空間?;蛟S這是我國超算加快發(fā)展的新契機。
超算編織出的數(shù)字世界,是現(xiàn)實世界中人類無法直接用雙手去觸摸的宏觀或微觀問題的投影。這個數(shù)字世界中蘊含了無數(shù)的可能性,當然也有無數(shù)的挑戰(zhàn)在等待著我們。多年來,超算硬件和軟件系統(tǒng)持續(xù)不斷發(fā)展,其背后就是人類對于科學、工程問題和未知世界永無止境的探索,多學科多領域的深度融合與發(fā)展。超算的發(fā)展也是如此,從眾多學科中汲取發(fā)展的動力,同時以超算的發(fā)展反推,為各學科領域提供新鮮動力。
以地球系統(tǒng)數(shù)值模擬近年來的發(fā)展為例,除了時空分辨率的持續(xù)提升(美國、歐洲及日本團隊均已提出了基于E級超算的全球1千米分辨率大氣模式目標),還呈現(xiàn)多過程、多時空尺度相耦合的復雜特性,對模擬軟件的研發(fā)提出了新的挑戰(zhàn)。數(shù)據(jù)分析方面,氣候變化、地球物理等領域積累了海量的多類型數(shù)據(jù),也有研究開始嘗試以深度學習方法增強和取代原有的數(shù)據(jù)分析功能。與互聯(lián)網(wǎng)的語音及圖像數(shù)據(jù)相比,科學領域的數(shù)據(jù)及模型往往涉及更大的維度和數(shù)據(jù)規(guī)模,而且對標注有更高的專業(yè)要求,對訓練和使用都提出了更多問題。在這種背景下,探索超算與人工智能方法結合的方案推動上述問題發(fā)展的同時,還將進一步開發(fā)出兩條路徑之間互補性的巨大潛力。例如,米級分辨、多時間點觀測的遙感衛(wèi)星數(shù)據(jù)相較于百公里級的氣候模式,有巨大的潛力提供更多的信息和預測能力。超級計算與人工智能的相遇和深度融合也將為眾多領域科學問題的探索提供更多可能。
中流擊水,奮楫者先。我們無法斷言未來的超算世界會是怎樣,但隨著計算技術和方法的不斷演進,超算本身與其他學科領域的深度融合,將會在數(shù)字世界中提供越來越多的創(chuàng)新可能。
[1]Brainerd J G, Sharpless T K. The ENIAC. Proceedings of the IEEE, 1999, 87(6): 1031-1041.
[2]Thornton J E. The cdc 6600 project. Annals of the History of Computing, 1980, 2 (4): 338-348.
[3]Russell R M. The CRAY-1 computer system. Communications of the ACM, 1978, 21 (1): 63-72.
[4]Seitz C L. The cosmic cube. Communications of the ACM, 1985, 28 (1): 22-33.
[5]Hayes J, Mudge T, Stout Q. Architecture of a Hypercube Supercomputer. International Conference on Parallel Processing, 1986: 653-660.
[6]Barker K J, Davis K, Hoisie A, et al. Entering the petaflop era: the architecture and performance of Roadrunner. SC08: Proceedings of the 2008 ACM/IEEE conference on Supercomputing. Institute of Electrical and Electronics Engineers, 2008: 1-11.
[7]Fu H H, Liao J F, Yang J Z, et al. The Sunway TaihuLight supercomputer: system and applications. Science China Information Sciences, 2016, 59 (7): 1-16.
[8]李國杰. 從103機發(fā)軔的中國電子計算機. 科學大觀園. 2019,(Z1):44-45.
[9]Yang C, Xue W, Fu H H, et al. 10M-core scalable fully-implicit solver for nonhydrostatic atmospheric dynamics. SC16: Proceedings of the International Conference for High Performance Computing, Networking, Storage and Analysis. Institute of Electrical and Electronics Engineers, 2016.
[10]Liu Y, Liu X, Li F, et al. Closing the “quantum supremacy” gap: achieving real-time simulation of a random quantum circuit using a new sunway supercomputer. Proceedings of the International Conference for High Performance Computing, Networking, Storage and Analysis. 2021.
關鍵詞:超級計算 數(shù)值仿真 科學計算軟件 ■