高性能計算不再像過去那樣,其性能尤其會受到現(xiàn)代集群系統(tǒng)的設計限制。德克薩斯大學德克薩斯高級計算中心主任 Dan Stanzione 提供了一個關于這個結論的論據(jù)。
Stanzione 在最近的 2019 年 MVAPICH 用戶組會議上討論了這個主題,他在 TACC 的新“Frontera”超級計算機的背景下談到了性能。從各方面來看,F(xiàn)rontera 是世界上最強大的系統(tǒng)之一。理論上它的最高性能為每秒 38.8 千萬億次浮點運算,在高性能? Linpack(HPL)基準測試中成績?yōu)槊棵?23.5 千萬億次浮點運算,這個成績使其成為 TOP500 排行榜上的第五名。
Frontera 由 8,008 個雙插槽節(jié)點組成,在節(jié)點之間以 100 Gb/s 的速度與 HDR InfiniBand 相連,并且以 HDR InfiniBand 支持的全速 200 Gb/s 速度運行到網(wǎng)絡骨干網(wǎng)的備用上行鏈路。這些節(jié)點由英特爾頂級處理器“Cascade Lake”Xeon SP 8280 驅動,該處理器有 28 個核心,運行頻率為 2.7 GHz,每個節(jié)點有工作頻率為 2.93 GHz 的 192 GB DRAM。與去年的“Skylake”Xeon SP 8180 相比,Xeon SP 8280 具有相同數(shù)量的內核,但是憑借它更高的內存周期時間,使它的時鐘速度提高了 8%,內存帶寬增加了 10%。
從某種意義上來說,F(xiàn)rontera 仍然在建設中。TACC 剛剛開始添加節(jié)點,這些節(jié)點將配備基于 3D XPoint PCM 內存的 Optane 持久存儲器。該計劃是部署 16 個帶有 6 TB Optane 內存的節(jié)點。這些將是四插槽節(jié)點,使用與 Frontera 的 vanilla 服務器相同的 Xeon SP 8280 處理器,他們希望將節(jié)點用于突發(fā)緩沖和內存數(shù)據(jù)庫處理之類的事情。
接下來也會部署 90 個 GPU 節(jié)點,每個節(jié)點配備 4 個 Nvidia Quadro 5000 RTX 顯卡。這些工作站 GPU 并不適合數(shù)據(jù)中心使用,TACC 將使用油浸技術降溫(由 Green Revolution Cooling 提供)。這一動作的目的是為分子動力學和機器學習等工作負載提供大量的單精度和混合精度性能提供一個計算引擎,又不會像 TACC 那樣為雙精度和 Tensor Core 數(shù)學單元使用頂級 Tesla V100 GPU 加速器支付高昂的費用。
即使沒有這些專用節(jié)點,核心 CPU 集群也足以使 Frontera 成為世界上最強大的學術超級計算機,無論是在峰值性能還是 Linpack 標準方面。但 Stanzione 并不認為這些數(shù)字并不意味著一切,雖然他也對 Frontera 的性能感到興奮。正如我們稍后會談到的那樣,F(xiàn)rontera 實際上正在做它想要做的事情,即運行 HPC 應用程序比之前排名靠前的學術超級計算機 Blue Waters 快得多。但對于 38.8 千萬億次這個數(shù)字,Stanzione 卻表示,這是一個可怕的謊言。
問題就是現(xiàn)在實現(xiàn)峰值浮點計算性能相當困難。而它在過去相當簡單:CPU 主頻×CPU 每個時鐘周期執(zhí)行浮點運算的次數(shù)×系統(tǒng)中 CPU 核心數(shù)目,這就是高性能計算峰值性能的方法。
但是,當您連續(xù)運行 Cascade Lake 的 512 位高級矢量擴展(AVX-512)設備時,您無法讓處理器跑到 2.7 GHz。由于散熱問題,英特爾必須降低 AVX-512 設備的時鐘頻率。在這種情況下,你運行 AVX-512 的頻率會低于 2.7 GHz,他解釋道。
所以即使 Frontera 的理論峰值為每秒 38.8 千萬億次浮點運算,也沒有辦法實現(xiàn),理論上甚至沒有。根據(jù) Stanzione 的計算,考慮到該處理器的 AVX 頻率約為 1.8 GHz,F(xiàn)rontera 的實際峰值性能接近每秒 25.8 千萬億次浮點運算,正如您可能注意到的那樣,它更接近 Linpack 的每秒 23.5 千萬億次浮點運算結果。
所有這些都可能有助于解釋為什么 Linpack 和峰值性能在 TOP500 列表上不再相關 - 至少對于使用 AVX-512 數(shù)學單元的機器而言。Stanzione 認為該指標過去更有用,因為這種相關性更加緊密。例如,當英特爾的“Sandy Bridge”Xeon E5 成為超級計算機的首選處理器時,Linpack 可以達到系統(tǒng)理論峰值的 90% 左右?,F(xiàn)在,由于峰值浮點性能指標被誤用,典型的 Linpack 收益率通常在 60% 到 65% 左右。順便說一下,Stanzione 指出,現(xiàn)代所有處理器都存在這種混亂,而不僅僅是英特爾。
?
?
現(xiàn)在估計性能的基本問題是時鐘頻率是根據(jù)芯片工作的功率和熱環(huán)境動態(tài)調整的。這些調整是連續(xù)發(fā)生的,因此,在任何給定時刻,都沒有簡單的方法來判斷給定節(jié)點中給定處理器的運行速度。
但是,有一些方法可以優(yōu)化環(huán)境以提高性能。例如,即使 Xeon SP 8280 在向量全速運行時以大約 1.8 GHz 運行 AVX-512 單元,在 Frontera 上,TACC 已設法將其增加到大約 2 GHz。這是采用基于 CoolIT 技術的特別高效的直接水架冷卻系統(tǒng)的結果。Stanzione 說你也可以使用噱頭來降低 DRAM 的速度來創(chuàng)造額外的熱量裕量。TACC 不太可能采用這種技巧,因為一般來說,給 DRAM 降速并不是一個好主意,因為代碼更容易受內存限制而不是計算限制。
拋開一切,好消息是 Frontera 在其選定的科學應用程序集中實現(xiàn)了所有性能目標。下圖說明了機器在每種情況下都超過了這些目標閾值,有時只有幾個百分點,在其他情況下,超過 100%。與 Blue Waters 相比,應用程序的運行速度提高了 3.2 倍至 9.5 倍,平均性能提升了 4.3 倍。Frontera 還使用了比 Blue Waters 上使用的節(jié)點少得多的節(jié)點來實現(xiàn)這些性能提升,使得每節(jié)點性能提高了 7.8 倍。
在這一點上,F(xiàn)rontera 目前有 37 個科學應用程序在其上運行。目前包括模擬黑洞碰撞的一般相對代碼,引力波模擬,模擬原子水平相互作用的病毒細胞模擬,光伏材料科學應用,腦癌模擬以及與 AI 結合的混合應用量子化學模擬。Stanzione 希望 Frontera 最終可以運行數(shù)百個應用程序。
但不是數(shù)千個應用程序,與一些中級 NSF 超級計算機不同,F(xiàn)rontera 與其前身 Blue Waters 一樣,旨在用于需要先進超級計算機的規(guī)模和功能的能力級應用。因此,一般而言,只需要應用最大的科學和工程問題?!拔覀冋娴南朐谶@臺機器上為人們節(jié)約大量的時間”Stanzione 說。
與非網(wǎng)編譯內容,未經許可,不得轉載!