歡迎光臨
每天分享高質量文章

HPC高性能計算知識: 常見測試評估基準解析


      筆者在之前文章“2017全球超級計算Top500和Green500榜單分析”中對高性能計算TOP500排行榜進行了分析,看到中國的太湖之光、天河2號繼續保持第一、第二,中國超算在該基準測試中已經連續多年衛冕奪冠了,但是讓我講講接下來聊聊你可能並不知道的事


      TOP500排名基於Linpack BenchMark性能(最新版HPL 2.0規範從2008年一直用到現在),不過隨著時間的推移,應用程式對更複雜計算的需求已變得原來越普遍,TOP500創始人之一的田納西大學教授Jack Dongarra認為Linpack性能已經過時,大家也意識到單看CPU性能的弊端,開始使用HPCG(The High Performance Conjugate Gradients)性能來全面衡量超算性能。

      天河2號之前也是HPCG(高度共軛梯度基準測試)性能第一名(2016年上半年度的HPCG性能榜單,中國的天河2號是第一,日本K位列第二),但從2016年下半年開始,第一被日本K超算系統奪走,當時K超算系統在TOP500中的排名目前是第七

      與Linpack關註線性方程的計算性能不同,HPCG使用更複雜的微分方程計算方式。Linpack衡量的是線性方程計算的速度和效率,無法測量這些更加複雜的計算程式。由於越來越多的應用程式採用微分方程計算方式,所以每一輪全球超級計算機500強排行榜的Linpack性能資料與真實的資料之間的差距將越來越大


      簡單來說,Linpack更考驗超算的處理器理論性能,而HPCG更看重實際性能,對記憶體系統、網絡延遲要求也更高,所以任何HPC超算測出來的HPCG性能要比Linpack性能低得多,基本報中告有個HPCG/HPL比率可衡量計算效率,大部分超算的比例都在5%以內,1-3%的比比皆是。



      HPCG標準從2014年開始正式參與排名,2017上半年的HPCG性能排行榜中,國內的天河2號以580TLFOPS位列第二,日本K(京)以602TFLOPS位列第一, TOP500第一的太湖之光HPCG性能是480TFLOPS,位列第三。太湖之光的HPCG/HPL效率只有0.4%是HPCG前10名中效率最低的。


      關於HPC系統能力基準排名,除了TOP500、Green500和HPCG之外,還有一個Graph500排名和Green Graph 500排名,Green Graph 500使用與Green500相同的性能指標,但它是根據每瓦特性能排名,即採用Green 500測試模型測試但配合Top500(HPL)使用每瓦特性能排序。


      從2017年上半年的Graph500榜單來看,日本K超算也拿下了第一名第二名是中國太湖之光,天河2號已經處於第八名的位置。

 

      Graph500專註於資料密集型負載BenchMark基準,標的是提高對複雜資料問題的認識,而不是專註於Top500所依賴的HPL(High Performance Linpack)等計算基準。在2010年的國際超級計算大會上第一次發佈測試基準值。新版本的串列每年發行兩次,用於對超級計算機進行排名的主要性能指標是GTEPS( Giga-Traversed Edges per Pecond千兆每秒邊緣遍歷)。



      Graph500使用的基準測試強調系統的通信子系統,而不是計算雙精度浮點數,它是基於大無向圖中的廣度優先搜索(平均程度為16的Kronecker圖)。基準測試中有兩個計算內核,第一個內核是生成圖形並將其壓縮為稀疏結構CSR或CSC(Compressed Sparse Row/Column); 第二個內核對一些隨機頂點進行並行BFS搜索(每次運行64次搜索迭代)。


      2017年超算首次發佈了IO-500測試基準,綜合反映I/O系統性能,IO-500測試分為兩個大部分,一個部分是帶寬測試,採用IOR程式進行測試;另一部分是元資料測試,採用mdtest程式和find命令進行測試。



      第一名是部署在JCAHPC的IME系統。IME系統由DDN公司開發的Burst Buffer系統,其IO-500測試得分比第二名高出了43%,說明瞭IME還是有很強的競爭優勢的。


      第二名是部署在KAUST的DataWarp,DataWarp是由Cray公司開發的基於閃存的Burst Buffer系統。Burst Buffer就是為這種浪涌型IO特征設計。


      單從檔案系統來看,排名中Lustre檔案系統有3個BeeGFS有2個,Spectrum Scale (GPFS)有2個。這3種並行檔案系統基本占領榜單,關於BeGFS請參看文章繼Lustre和GPFS之後,HPC又迎來那個新檔案系統接盤


      最後討論一下HPC場景我們經常用到的測試基準。這些基準應用於不同HPC場景,主要從應用基準微觀基準來進行描述。應用基準是偏向於某種應用的BenchMark,測試更具有針對性;然而微觀基準則更具普適性,更加偏向於純粹的工具性能測試。



      上圖展現的是常見的應用基準測試實體,除了HPCG外,主要包括GTC-P 、Meraculous、MILC、MiniDFT 、MiniPIC和PENNANT等。


      GTC-P(Gyrokinetic Toroidal Code)通過使用粒子單元演算法求解Vlassov-Poisson方程來模擬離子通過托卡馬克的運動。在每個PIC(particle-in-cell)時間步長期間,粒子的電荷分佈被內插到網格上,泊松方程在網格上求解,電場從網格內插到粒子,並且根據電場更新粒子的相空間坐標。


      Meraculous是一種大規模並行基因組組裝基準,構造並遍歷存在於冗餘短序列輸入資料集中的長度為k(k-mers)的所有重疊子串的de Bruijn圖。通過遍歷de Bruijn圖,併發現所有(可能斷開的)線性子圖,Meraculous能夠構建基因組資料的高質量連續序列。



幕後玩家

主演:徐崢 / 王麗坤 / 王硯輝


貓眼電影演出

廣告

購買

      MILC基準代碼表示由用於研究量子色力學(Quantum Chromodynamics)的MIMD晶格計算(MILC)協作的一組代碼,屬於亞原子物理學強相互作用的理論,通過並聯機器進行四維格子規格理論的仿真。屬於物理研究和模擬場景下的基準。


      MiniDFT是用於建模材料的平面波密度泛函理論(Density Functional Theory)的模擬應用程式。MiniDFT使用LDA或PBE交換相關函式計算Kohn-Sham方程的自相一致解。對於自相一致的場迴圈的每次迭代,構建Fock矩陣,然後對角化。為了構建Fock矩陣,使用快速傅立葉變換將平面波基(其中最容易計算的動能)轉換為實際空間(其中電位被評估)和傳回的軌道。


      MiniPIC是解決具有反射壁的任意域中的靜電場中的離散Boltzman方程。MiniPIC基準測試使用非結構化的基於hex或tet的網格以及用於粒子網格的靜態分割槽。粒子被跟蹤到每個單元格交叉區,打包後並使用MPI傳遞到相鄰的處理器。主要代碼庫使用了Trilinos數學庫中的Tpetra物件進行矩陣/向量操作。


      PENNANT是一款用於高級架構研究的應用程式。它具有用於操縱包含任意多邊形的二維非結構化有限元網格的資料結構。PENNANT使用幾何域分解支持MPI並行性,對使用MPI呼叫的處理器上實現的點資料進行採集和散射操作,還支持使用OpenMP或CUDA的執行緒並行。


      SNAP作為代理應用程式來建模現代離散坐標中性粒子傳輸應用程式的性能。SNAP被認為是Sweep3D的更新,旨在用於混合計算架構。它是由洛斯阿拉莫斯國家實驗室代碼PARTISN建模的。


      UMT是建立在多個核分佈式儲存,多節點並行計算機系統上,執行三維非結構化空間網格上的時間依賴性,能量依賴性,離散坐標和非線性輻射問題的解決方案。為了實現極大的可擴展性,應用程式利用節點之間的訊息傳遞和在節點內角度的執行緒演算法進行空間分解。


      下麵我們介紹下微觀基準微觀基準則更具普適性,經常在專案中客戶RFP中出現,更加偏向於純粹的工具性能測試


      Crossroads/N9 DGEMM基準測試是一種簡單,多執行緒,密集矩陣乘法測試。該代碼旨在測量單個節點的持續浮點計算速率。


      IOR是最常見的BenchMark基準,旨在測量POSIX和MPI-IO級別的並行I/O性能。


      Mdtest是一個MPI協調的元資料基準測試,可以對檔案和目錄執行檔案操作,基於不同操作報告性能。


      STREAM 基準用來測試持續的計算記憶體帶寬。Crossroads/N9記憶體帶寬基準測試是John D. McCalpin最初編寫的STREAM基準測試版本的升級版。


      至此我們對TOP500、Green500、HPCG、Graph500和Green Graph 500業界知名HPC系統排行榜,以及IOR、Mdtest和STREAM等HPC場景中的基準測試方法有了比較全面瞭解。


      儘管如此,這些基準都能從某個視角展現TOP超級計算系統的能力,如果從這個角度將,那麼Linpack Benchmark的時代還並未過去。HPCG將只是作為全球超級計算機500強榜單排行的另一個可用標準,更是對TOP500計算系統進行排名的高性能Linpack(HPL)基準測試的補充。


技術專欄推薦

      編程範式、分佈式系統關鍵技術、性能調優和微服務實戰經驗(掃碼關註學習)。

      關於HPC技術和方案,前期詳細分享過<從高性能計算(HPC)技術演變解析方案、生態和行業發展趨勢>文章,請點擊鏈接查閱。 


近期熱文推薦

溫馨提示:
請搜索“ICT_Architect”“掃一掃”下麵二維碼關註公眾號,獲取更多精彩內容。

聽說點贊和分享的朋友都已走上人生巔峰

赞(0)

分享創造快樂

© 2021 知識星球   网站地图