2023 即將上線的超級電腦(Supercomputer)
歐洲最大的超級電腦(Supercomputer),將要在 2023 年上線啦!今年六月中時,德國于利希研究中心(Forschungszentrum Jülich GmbH)的超級計算中心(Jülich Supercomputing Centre, JSC)發佈新聞稿[1],表示歐盟的歐洲超級電腦中心聯合承辦組織(EuroHPC Joint Undertaking)選定該研究中心的超級計算中心,做為歐洲第一個設立 Exascale 超級電腦 Jupiter 的地點[2],歐盟出資一半,而另一半的資金將由德國教育部(BMBF)以及北萊茵威斯特法倫州(Nordrhein-Westfalen)文化部共同出資,其意昧著這台超級電腦也將優先提供給德國的科學家,以及北威州的研究單位使用[註一]。表示現今的超級電腦軍備競賽,已打到了 Exascale 了,Jupiter 將是繼美國設立世界第一台 Exascale[註二]的超級電腦 Frontier 後[3],即將出現的次世代超級電腦(如果德國的施工期有好好的踩點)。
Exascale 的超級電腦具有「每秒百億億次(1018)」(也就是 100 京)的每秒浮點運算(FLOP)能力,實際規模也將具有國家高速運算中心台灣杉二號[4]的 111 倍以上的運算能力,也就是要建立超過百台規模的台灣杉二號才具有 Exascale 的規模,但也同時考驗硬體的處理能力、主機間節點的連線架構、資料讀寫能力,更甚者,則是軟體是否具有 Exascale 的使用能力,也就是硬體與軟體都必須要能夠良好的契合才行。
什麼是超級電腦?可以幫助都市成為超級都市嗎?
「這些顯示器太舊了」雷迪亞茲說。
「但它們後面是世界最強大的電腦,每秒可以進行五百萬億次浮點運算。」
~ 劉欣慈《三體:黑暗森林》
劉欣慈《三體:黑暗森林》(2007)提到人類「當時」最強的電腦,為五百萬億的運算能力「而已」,沒想到 15 年後的今天,地表最強的超級電腦 Frontier 是出現在美國的橡樹嶺國家實驗室(Oak Ridge National Laboratory),而不是小說裡說的,在洛斯阿拉莫斯國家實驗室(Los Alamos National Laboratory),而且 Frontier 的效能還是小說裡超級電腦的五千多倍,可說是現實終於有超過小說的時候了(但我們依就沒有飛天滑板可以借東京都的死神小學生)。
超級電腦是科學家進行高速/高效計算(High Performance Computing)的主要設備。超級電腦的架構,可以說是非常的簡單:用網路線連結各台主機,讓主機間互相溝通,才能夠進行平行運算。
一般超級電腦的架構大致上如下:一機板上可能會有一個到數個 CPU,而一個或是數個機板會組成一個節點(Node),有時數個結點會組成一個機櫃(Rack/Cabinet)。節點與節點間的連結,就是依靠網路線在進行 CPU 之間的溝通,因此網路變成非常重要的元件。
在此架構下,如何讓結點間有效溝通,也是一門學問了[5]。這些 CPU 可以想象是每個拿著工程計算機的研究生,正等著教授指派任務給他們算,而一個節點就是一個房間,在同一個房間內的溝通一定是比較快的,當不同房間需要溝通時,就會需要走出房間去給資料,如果所有的人一起拿資料回報給教授,那這教授可能就會崩潰,所以如何讓研究生(CPU)互相溝通,又不至於塞車,就是電腦工程專家們的專業了。
現在超級電腦的架構也與過往的超級電腦不同了。除了採用巨量 Arm 晶片的日本富岳(具 158,976 節點)、自主研發晶片的中國神威太湖之光(具 40,960 節點)外,前十大超級電腦[3]都是採用 CPU 加上 GPU 的混合架構(如在機板上插上 GPU 增加運算效率),才達到 100 Peta-Flop(1Peta = 1015) 以上的計算量,也意味著未來要在超級電腦上進行高效計算,GPU 運算也成為很重要的應用,因此也有許多計畫正在將軟體朝 GPU 運算的方向前進與推動。
軟體是否能配合平行化,也是非常是否能進行高效運算的重點之一。所謂的高效計算,也是利用許許多多的運算元件(CPU 或是 GPU),採平行運算的方法,將一個問題切成許多碎片,以螞蟻雄兵的方法一一解決,所以不要再怪為什麼你家的電腦 CPU 無論幾核心都只用了一核心,那是因為你的軟體沒有進行平行處理。早期土木界在進行坡面的圓弧破壞面計算時,據說就是用人力一人算一片圓弧的切片,也算是(人力)平行運算的先驅之一了。一般電腦中使用平行運算最多的,應該就是你手上那張 GPU 顯卡,在 GPU 的加持下,電腦螢幕中每個點、每個邊、每個平面上的顏色與光影,才能完美的呈現在使用者的眼前,所以與其用顯卡挖礦,還不如投身虛幻而真實的遊戲世界。
不過有了地表最強的超級電腦,並不代表我們今天就能夠像小說形容的一樣,能幾秒內預測核子彈的破壞能力,或是在一天內算出地球百年後的氣候狀況,因為平行計算加快了計算的速度,但有其極限。
資料的讀入或是寫出,也是瓶頸之一,電路板與網路速度,以及資料存取方式都會造成資料讀寫的延遲,更不用說,若是打算模擬地球,其將耗盡 80 exabyte 等級的儲存空間,其為 CERN 的 ATLAS 與 CMS 計畫所產生的資料量的十倍[6]。
為什麼氣候模擬要用到 Exascale?
Exascale 的超級電腦除了可以提供更多的運算能力,給更多的使用者進行模擬與計算外,也是挑戰超大型計算的開始。不過為什麼要 Exascale?到底為什麼一個模擬要用到上千甚至是上萬顆的 CPU 在運算?氣象氣候模擬已經將 Exascale 喻為下一階段應使用的救星[7],在氣象上除了要能做到一小時內達成氣象預測外,也希望能夠進行叢集式運算(像是利用隨機方法產生上百個因亂度而有不同結果的預測),進而進行機率式預測分析,或是提高水平距離至 2.5 公里以下的網格精度,此精度也為可進行對流模擬 (Convection-Permit)[8] 的精度。氣候模擬也需要高效能的運算,除了高精度的全球模型外,也需要進行長程的氣候模擬,幾十年到幾百萬年的模擬時間,也將需要 Exascale 等級的超級電腦來加速模擬,縮短實驗時間。越多的計算核心以及有效的平行運算,才能讓最真實的模擬結果讓人類使用,畢竟,誰都希望出遊不要遇上下大雨,也會希望能夠提前幾天知道颱風的路徑。
地球系統模擬中,其中一個挑戰便是進行模擬時程:挑戰一日(24 小時)的超級電腦計算可以得到多少年的模擬結果(simulated years per wall-clock day, SYPD)[6],還真的是「度日如年」,而此地球系統的精度為水平方向僅一公里的超高解析度,用來進行最終極的地球系統模擬:數位攣生(Digital Twins)[9]。數位攣生計畫主要是要建立地球的複製體,以方便人們對地球進行各種「實驗」,了解到經濟或政策面對地球生態或是氣候的影響,因此要達成此目的,強大具 Exascale 能力的電腦,便成為了目標。
目前已經有部份超級電腦都在進行 SYPD 的挑戰,如中國的神威太湖之光,其已完成了每日 3.4 年的地球系統模擬[10],只不過其地面僅有 25 公里的水平精度,海面僅 10 公里的水平精度,還有非常多的進步空間。只可惜,這個實驗並沒有進行進行資料輸出,無法得到正確的效能結果(資料的寫入與輸出也是非常費時的),以及真正的運算結果:因為沒有資料,就沒有辦法分析。
從高速電腦看量子電腦:量子電腦會是傳統的救星嗎?
量子電腦目前也成為了熱門名詞,從 2019 年開始,IBM 與 MIT 共同開始了量子計算課程,各學術單位也在搶攻量子電腦領域,但對地球模擬領域而言,量子電腦還太遙遠,對「傳統物理」的地球科學來說,我們解偏微分、解多項式,用的是傳統的數值方法,跟量子電腦界在進行的運算,也差了十萬八千里。
編按:這邊所說的數值方法,簡單講就是「暴力解」。例如要求圓周率,就先設定一個半徑為 1 的圓面積公式,然後問電腦答案是多少,電腦的第一步會
把所有正整數代入公式中從一個初始數字(Initial State)開始,先找到答案會在 3 到 4 之間,之後又把 3 到 4 之間的所有數,帶回一開始的公式,得知答案在 3.1 到 3.2 之間,之後又將這個區間的所有數帶回一開始的公式,如此重複很多次後,就會得到相對接近的正確答案。量子電腦就比較詭異了,量子態的平行運算與邏輯閘,使得兩者的運算邏輯完全不同,以上面的圓周率問題為例,量子電腦會直接給出在 3.1415925 至 3.1415927 之間,存在正確答案的可能性是最高的,但是這個範圍也有可能是錯的,而且就算是錯的,以我們現在的能力也很難說明它錯在哪裡。
從表面上來看,傳統電腦用暴力解,以排除錯誤答案的方式逼近正確答案,而量子電腦不排除錯誤答案,直接找到最有可能的答案會在哪個區域,但不保證運算過程中的正確性。
因為這個區別,若將現在成熟的模擬方法直接導入量子電腦中,最有可能出現的就是不知道怎麼解讀得到的數據,這包含了答案的正確程度,以及改動特定變數後所產生的答案變動是從何而來?
IBM 與 GOOGLE 正在爭奪追逐量子霸權(Quantum Supremacy)的同時[11],(不過 Google 號稱的量子霸權,也就是一萬倍的計算速度,在 2021 年被中國科學院理論物理所的 Feng 等人用了 15 個 NVIDIA V100 GPU 給追上[12][註五]),其離傳統電腦計算的距離,也有十萬八千里遠,離應用於地球科學計算上還有一定的距離,但只要哪一天能夠應用在普通的大氣循環模式(GCM),就可以算是第一步吧。但是在量子力學進入大氣科學前,我們氣候與氣象模擬還是只能使用傳統的電腦主機,靠著 2 位元的方法進行大氣模擬,所以目前傳統超級電腦還沒有被取代的機會。
結語:超大主機與超大計算
依摩爾定律,每十八個月,CPU 晶片的製成就會進步一倍,同時,超級電腦中心卻是一直受益於摩爾定律帶來的好處,也就是 CPU 的能力越來越強,而價格也越來越親民,也讓氣候氣象模擬的空間精度也隨之升高。
Neumann 等人也預計在 2030 年代後,進行 1 公里等級的超高精度計算也將不是夢想[7],而在 Exascale 主機降臨前的這個年代,有些超級計算中心已經以節點(Node)做為計算資源耗費的單位(Node per hour),而非 CPU per hour,顯示出大型主機對計算資源消耗的想法以從 CPU 規模上升到了 Node 規模。
一方面使用者受益於更多的 CPU 資源,但同時這些主機也要求更新更大量的計算能力,如瑞士的 Piz Daint 與瑞典的 LUMI,皆要求使用者的計算必須是含有 GPU 運算能力,而純粹靠 CPU 運算的軟體,將無法享受到同等的巨量資源。
而相應的挑戰也隨之而生,除了硬體將進入 Exascale 的時代,軟體也將一同進入這場大戰,才能享受同等的資源。另外一個挑戰則是綠色挑戰,1 公里精度的氣象模擬,每一模擬年將耗盡 191.7 百萬瓦時[6],相當於台灣一個家庭可以用上 43 年的電量[註三],也可以讓特斯拉的 Model 3LR 從地球開到月球來回開 1.5 次[註四],其耗能之巨,也是我們計算或是模擬界科學家應該要注意到的問題,也是為何除了 HPC Top500 外,亦有 Green 500[13]的原因吧,而具有超高效能的 Frontier,也同時奪下了 Green 500 之冠,也算是 Exascale 的好處吧。
註解與文獻
- [註一] 若需使用 JSC 的超級電腦,必須透過不同的計畫項目進行申請,其計畫主持人(PI)為歐洲或是德國的研究者[14]。
- [註二] 日本的富岳其實也可以進行到 Exscale 的運算,只是要超頻而已,想當然爾是非常規設定。
- [註三] 根據台電 2021 年新聞稿中,家庭離峰平均用電為 339 度以及 6-9 月為 434 度推估。
- [註四] 根據 Tesla M3 LR 為 25kWh per 100 Miles,月球至地球為 384400 公里推估
- [註五] Feng 也公開了他的程式碼
- [1] Forschungszentrum Jülich 新聞稿
- [2] EUROPE HPC 新聞稿
- [3] 2022 年六月 HPC Top 500 名單
- [4] 國家高速網路中心台灣杉二號介紹
- [5] 司徒加特超級電腦中心:HAWK 主機之連線架構
- [6] T. C. Schulthess, P. Bauer, N. Wedi, O. Fuhrer, T. Hoefler and C. Schär, “Reflecting on the Goal and Baseline for Exascale Computing: A Roadmap Based on Weather and Climate Simulations,” in Computing in Science & Engineering, vol. 21, no. 1, pp. 30-41, 1 Jan.-Feb. 2019, doi: 10.1109/MCSE.2018.2888788.
- [7] Neumann P et al. 2019, Assessing the scales in numerical weather and climate predictions: will exascale be the rescue?. Phil. Trans. R. Soc. A 377: 20180148. http://dx.doi.org/10.1098/rsta.2018.0148
- [8] Kendon, E. J., Ban, N., Roberts, N. M., Fowler, H. J., Roberts, M. J., Chan, S. C., Evans, J. P., Fosser, G., & Wilkinson, J. M. (2017). Do Convection-Permitting Regional Climate Models Improve Projections of Future Precipitation Change?, Bulletin of the American Meteorological Society, 98(1), 79-93
- [9] Bauer, P., Dueben, P.D., Hoefler, T. et al. The digital revolution of Earth-system science. Nat Comput Sci 1, 104–113 (2021). https://doi.org/10.1038/s43588-021-00023-0
- [10] Zhang, S., Fu, H., Wu, L., Li, Y., Wang, H., Zeng, Y., Duan, X., Wan, W., Wang, L., Zhuang, Y., Meng, H., Xu, K., Xu, P., Gan, L., Liu, Z., Wu, S., Chen, Y., Yu, H., Shi, S., Wang, L., Xu, S., Xue, W., Liu, W., Guo, Q., Zhang, J., Zhu, G., Tu, Y., Edwards, J., Baker, A., Yong, J., Yuan, M., Yu, Y., Zhang, Q., Liu, Z., Li, M., Jia, D., Yang, G., Wei, Z., Pan, J., Chang, P., Danabasoglu, G., Yeager, S., Rosenbloom, N., and Guo, Y.: Optimizing high-resolution Community Earth System Model on a heterogeneous many-core supercomputing platform, Geosci. Model Dev., 13, 4809–4829, https://doi.org/10.5194/gmd-13-4809-2020, 2020. https://gmd.copernicus.org/articles/13/4809/2020/
- [11] 「嗨量子世界!」~ Nature Newsletter
- [12] Feng Pan, Keyang Chen, and Pan Zhang, Solving the sampling problem of the Sycamore quantum circuits, accepted by Phys. Rev. Lett.
- [13] 2022 年六月 HPC Green 500 名單
- [14] JSC 系統申請辦法