超級電腦的速度如何計算?從超級電腦競爭白熱化看 TOP500 效能指標

yobe 發表於 2018-7-13 19:31:31 [顯示全部樓層] 只看大圖 回覆獎勵 閱讀模式 2 3319

今年 6 月,美國將新的超級電腦上線並經 TOP500 Organization 認證,確定美國的超級電腦 Summit 以 122PFlop/s 的優異效能奪回超級電腦界的世界第一。然而 TOP500 是什麼樣的組織?他們如何驗證超級電腦的計算效能?

是於 1993 年成立的組織,期望統計世界 500 大超級電腦的發展狀況及效能,並於每年 6 月及 11 月發表統計結果。從 TOP500 公布的超級電腦效能發展圖可發現,超級電腦的效能發展相當穩定。

值得一提的是,上表的 Flop/s 是指每秒可執行多少次浮點運算,可想成電腦在 1 秒內執行多少 1.1+2.2 這樣的小數加減乘除。前面的 M、G、T、P、E 表示有多少計算量,以美國的 122PFlop/s 為例,這代表該台電腦在 1 秒內可計算 122×10 的 15 次方,也就是 122,000 兆次浮點運算,相當驚人。

其中,比較值得注意的是,現在的 GPU V100 計算卡,根據 Nvidia 宣稱的計算能力,大約等於 2000 年時排名第一的超級電腦,也就是說 2000 年需要超級電腦才能完成的問題,現在可輕易跑在 30 萬台幣的加速卡就能達成。科技的發展,替科學計算帶來相當多助益。

TOP500 的 Benchmark──LINPACK

TOP500 採用 LINPACK 這款軟體為效能評估的依據。此外,他們會判斷機器的通用性是否充足。如果該機器是 LINPACK 特化的超級電腦,該組織會把此機器從名單踢除,以確保超級電腦的發展不會被榜單影響。

然而,LINPACK 到底是什麼軟體,為什麼要以 LINPACK 為 TOP500 的判斷依據?真的可充分表示該超級電腦的計算能力滿足計算科學的需求?LINPACK 這套軟體,主要是求解 Ax=b 經典線性代數的問題,採用的求解法是 LU factorization。之所以採用此方法是因為科學計算領域中,大多都是求解線性系統,使用此套軟體得以讓使用者大致了解該超級電腦的效能。

但 LU factorization 是高斯消去法的變形,並非相當容易平行的方法。究竟如何在超級電腦運作?從 netlib.org 公布的資料可略知一二。


首先,他們將矩陣 A 切割成數塊資料,如圖 2 一共用 6 種不同顏色標註資料區塊。一個顏色代表一台電腦分配到的工作量。如此將資料分配到不同電腦,讓每台電腦的計算量得以均衡。

之後如圖 3,沿對角線一步步進行 LU factorization。詳細的演算法細節,可至 netlib.org 查看原始程式碼。


驗證 Benchmark 不嚴謹?那就加入一個新的吧

然而,大多數使用者會採用遞迴法而非 LU factorization。遞迴法的特性是極度依賴資料傳輸的頻寬,諸如記憶體傳輸的頻寬、不同結點間的傳輸頻寬等,導致以 LINPACK 為基準會有些許失真,無法完全反應一台超級電腦的總和評估。

因此,HPCG,新的 benchmark 在 2013 被提出並於 2017 年正式加入評比,並發表在 TOP500,期望以 preconditioned conjucate gradient method(PCG)──和 LU factorization 一樣經典的線性系統求解法──讓使用者更精確了解現在超級電腦的效能如何。

為什麼會提議以 HPCG 為新的驗證程式呢?這是因為 PCG 會進行 3 種基本矩陣計算,分別為 Sparse matrix-vector multiplication、Vector updates、Global dot products。這些矩陣計算會頻繁交換不同電腦間的資料,不單測量一台超級電腦的計算能力,還評估網路頻寬的好壞,提供更全面的參考依據。此外,這些矩陣計算也常用在其他演算法,HPCG 可提供更全面的效能量測。

那將原本以 LINPACK 排名的電腦重新用 HPCG 排名會發生什麼事?下表可發現整個名次大幅改變。值得注意的是,曾經是世界第一名的超級電腦「京」(K Computer),從 LINPACK 排名 16,在 HPCG 一舉跳升到第 3 名,便是因為「京」擁有獨特的網路拓樸,帶來更平衡的計算環境。


新的衡量標準,讓原本排名重新洗牌,也拉低整體的計算效能。HPCG 也證明了 LINPACK 這標竿有缺陷,沒辦法完整評估超級電腦的真實效能。藉由 HPCG,TOP500 可更完整驗證每台電腦的計算效能。

耗電問題變嚴重,Green 500 孕育而生

然而,隨著計算效能提升及更重視環保,超級電腦能源消耗的問題漸漸變得重要。以目前世界第一的超級電腦 Summit 為例,便需消耗 8.8MW 電量,約為綠島發電廠的總發電量。也就是說一台 Summit 所需電量便可供給全部綠島居民及遊客需求,相當驚人。

為了避免超級電腦無止境的消耗能源,Green500 於 2013 年開始統計 TOP500 每台超級電腦的能源消耗量。衡量方法為計算每台超級電腦 LINPACK 的計算效能除以消耗電量,計算每消耗 1 瓦特可獲得多少計算效能。

從 2018 年發表的 Green500 可發現,大多數上榜的電腦皆為排名偏後的超級電腦。比較值得一提的是,世界第一的超級電腦 Summit 可排進第 5 名,算是相當省電的超級電腦。


此外,Green500 中,前 10 名有 7 名為日本超級電腦,顯示日本人相當重視超級電腦的耗電狀況。

隨著更多衡量標準加進超級電腦榜單,我們可更準確及全面了解超級電腦的發展狀況。


已有(2)人回文

切換到指定樓層
yokcobra 發表於 2018-7-14 11:30
yobe 發表於 2018-7-13 19:31
今年 6 月,美國將新的超級電腦上線並經 TOP500 Organization 認證,確定美國的超級電腦 Summit 以 122PFl ...

超級電腦的運算速度真的是好快喔!
人類頭腦是比不上的。
Screenshot_2017-12-29-07-59-44_1.jpg
bcdexedcb 發表於 2018-7-14 21:46
超級電腦, 好有趣的話題
用在氣象  醫學 科學計算上
大家都可以享受科學帶來的成果

你需要登入後才可以回覆 登入 | 註冊會員

本版積分規則

yobe

LV:-2 禁止發言

追蹤
  • 28741

    主題

  • 48012

    回文

  • 14

    粉絲