請更新您的瀏覽器

您使用的瀏覽器版本較舊,已不再受支援。建議您更新瀏覽器版本,以獲得最佳使用體驗。

科技

為了超級電腦而生的系統單晶片:從 IBM BlueGene_L 到 Fujitsu A64FX

科技新報

更新於 2020年07月02日14:20 • 發布於 2020年07月03日08:00

最近 ARM 指令集相容處理器占據不少新聞版面,除了千呼萬喚始出來、預定兩年內完全取代英特爾處理器的 Apple Silicon,再來就是引起不少討論、先後在 2019 年 11 月 Green500 和 2020 年 6 月 Top500 奪下榜首的日本理化學研究所超級電腦「富岳」(富士山的別稱)的關鍵技術核心:Fujitsu A64FX 處理器。

整體來看,無論從哪個角度觀察,這應該是目前最高階的 ARM 指令集相容處理器了。

其實 Fujitsu 早在 2018 年夏天的處理器業界盛事 IEEE HotChips 30,就公開 A64FX 的技術細節(其中部分內容更在 4 月就先行披露),本質算是「電腦的語言」指令集架構從 SPARC-v9 轉換成 ARM-v8.2-A 的 SPARC64fx 處理器(因衍生於高階伺服器專用的 SPARC64,也繼承了諸多類似特色,如大型主機等級的資料可用性),採用台積電 7 奈米製程生產,主記憶體使用近來因高階繪圖晶片逐漸普及的 HBM2,和運算核心由台積電的 2.5D 封裝 CoWos 技術包成一顆,毋需外部的記憶體顆粒。

講更精確點,Fujitsu A64FX 是「針對超級電腦量身訂做的 ARM 指令集系統單晶片」(System-on-Chip,SoC),其概念更可追溯於 2004 年 11 月,一舉趕下雄踞「世界最強超級電腦王座」超過兩年半(2002 年 3 月到 2004 年 11 月)地球模擬器(Earth Simulator)的 IBM BlueGene/L,體積僅有容納 1,024 個運算節點和 8TB 主記憶體的 16 座機櫃,反觀地球模擬器動用 640 個運算節點,總共 5,120 顆 NEC SX-6 向量處理器和 10TB 主記憶體,多達 320 座運算機櫃,彰顯了追求建造速度的獨到思維與異質功能融合的潛在威力。

後來勞倫斯利佛摩國家實驗室(Lawrence Livermore National Laboratory,LLNL)的 BlueGene/L 持續擴充到 104 座機櫃(478TeraFlops,峰值 596TeraFlops),2008 年 6 月被同樣出自 IBM 的洛斯阿拉莫斯國家實驗室(Los Alamos National Laboratory,LANL)的 Roadrunner 超越,穩占 Top500 首位長達 3 年半之久。後者是人類史上第一台效能達 1PetaFlops 的超級電腦。

那年剛好微處理器論壇(Microprocessor Forum)首次在台灣舉辦(新竹煙波大飯店),IBM 也在活動議程裡,充分闡述 BlueGene/L 的技術細節與設計理念,筆者有幸坐在台下躬逢其盛,富岳和 Fujitsu A64FX 則讓筆者回憶起歷歷在目的往事。

於「日用品」堆砌超級電腦以外的另類系統單晶片路線

「世界最快的超級電腦」不但是國家科技能力的重大象徵,更是科技強權之間的國力較量,根據國家的 Top500 進榜數與總效能「圓餅圖」,比重與趨勢或多或少反映了國家的影響力。前述的富岳超級電腦,相關費用總計 1,300 億日圓,其中 1,100 億日圓由日本納稅人買單,日本政府「宣揚國威」的強烈動機,不言可喻。

自從個人電腦與叢集運算環境(Cluster)普及後,超級電腦業界逐漸從特別客製化且量少價昂向量處理器、系統控制與記憶體晶片,朝向採用市售的「日用品」(Commodity)或系出同源的衍生產品(如 nVidia 的高階運算用 GPU),除了降低購置與維護成本,亦可進一步提高超級電腦的可靠性與可用性。

也因此,Top500 清單早是滿滿一整排英特爾處理器與 nVidia 加速卡(與少少的 AMD 產品,以及根本沒有未來的英特爾 Xeon Phi),偶見 IBM 的高階 Power 處理器與 Fujitsu 的 SPARC64fx。

畢竟不計成本導入特製化零件與特殊半導體製程(甚至像 Cray-3 和 Fujitsu VPP500 還用到砷化鎵這麼獨特的材料)的「高階試作品」,自然遠不如消費性市場隨手可得的「成熟量產品」可靠。過於特殊的專屬規格處理器,也限制了應用軟體和開發平台的選擇性,提高開發軟體的時間與成本。反之,投奔「開放規格」,即可享受到更多樣化的開源社群資源,並因更頻繁的技術交流,而加速技術演進。

但超級電腦市場較量的重點,並不只限於帳面效能和耗電,「研發時程」和「建造速度」也同樣舉足輕重。這也是 IBM BlueGene/L 在十多年前可在超級電腦領域獨領風騷的祕密:延續現有 Power 處理器的研發成果,打造高度系統單晶片化的運算節點,實現更高的空間利用密度和更快的系統組裝速度。Fujitsu A64FX 更承襲相同的思維,並藉由台積電被眾多客戶千錘百鍊後的成熟製程、研發資源豐富的 ARM 生態圈、拜顯示晶片市場之所賜而便宜可靠的 HBM 記憶體,青出於藍勝於藍,相隔近 16 年,重現系統單晶片一次奪下 Top500 榜首的榮景。

大處著眼,小處著手

相信熟悉超級電腦的讀者或許會想起,當時那台 IBM 與 Livermore 實驗室合作的 BlueGene/L 測試機,並非徹底施工完畢的超級電腦(這讓日本人頗不以為然),但在 Livermore 國家實驗室,確實有部分應用程式跑在上頭,並打敗了地球模擬器保持的紀錄。問題來了,為何 IBM 可以用這麼快的速度(當時可是震驚世人),建好一台世上最快的超級電腦?

2004 年,BlueGene/L 可謂世界最大的嵌入式微處理器集合,揭示了「大處著眼,小處著手」觀念,將系統單晶片的價值,從微型系統帶到極大規模的超級電腦,技術核心為重新設計後的雙核 PowerPC 440,具低耗電量和低發熱量等特點。利用諸多今日我們耳熟能詳的系統單晶片特色的 BlueGene/L,有以下特點:

  • 超級省電:相同的運算量,這台 BlueGene/L 耗電量僅 NEC 地球模擬器的二十八分之一,自然也降低了發熱量。

  • 簡單清楚的系統架構:BlueGene/L 不再有一大堆糾纏如「新竹米粉」的五顏六色線路和多如牛毛的網路匯流排控制器,易於安裝與維護。

  • 快速完成產品設計:利用現有研發成果,透過系統單晶片整合額外功能,不必重新設計每個元件,可迅速兜成產品。即使這算是「專屬規格晶片」,但意義卻和過去不惜血本的燒錢做法截然不同。

BlueGene/L 的架構相當單純:

  • 每顆時脈 700MHz 的處理器晶片,包含兩個倍增浮點運算器的修改版 PowerPC440 核心與時脈 350MHz 的 4MB L3 快取記憶體(可設定為系統記憶體)。
  • 兩顆處理器晶片組成一張運算卡(Compute Card),上面附有 512MB 容量 DDR 記憶體,耗電量只有 20W。

  • 16 片計算卡構成一片節點卡(Node Board),32 個處理器晶片(64 核心),提供 180GigaFlops 理論計算能力,8GB 記憶體。

  • 32 片節點卡裝在同一台機箱,提供 5.7TeraFlops 與 256GB 記憶體。

  • 整個系統最大組態為 65,536 個節點卡(64 個機箱),當全部處理器都設定成計算模式時,有高達 360TFlops 的峰值運算量(2004 年底那台是 70.72TeraFlops)和 16TB 記憶體。

所謂的超級電腦,就是指具巨大平行運算量的系統(有別於追求頂級可靠性和極致軟體相容性的商用大型主機),大多數平行處理程式,都必須在執行每個小單元,參考之前的單元計算結果,或是傳送結果到其他執行單元,帶來巨大的資料傳輸量。超級電腦的開發者幾乎都將一半精力耗費在資料傳輸網路的設計。

BlueGene/L 系統組成極端乾淨,處理器晶片內建 5 種功能相異的網路控制器,讓不同類型的工作分而治之,只需要板子上的連接點組成整個系統,你也看不到拉來拉去的排線和到處安插的匯流排網路控制器:

  • 3D Torus 網路:每顆晶片有 6 個方向傳送資料到整個系統,具流量監控、計算最佳傳送路徑的功能。

  • Collective 網路:用來管理控制。

  • 處理中斷與系統問題的低延遲高速網路(Global Barriers and Interrupts)

  • 用來進行一般 I/O 和檔案存取的 Gigabit 乙太網路

  • 用來控制開機與設定的控制網路(Control Network)

為何 IBM 要讓 BlueGene/L 同時用 5 種網路架構?起因於 IBM 並未為了這台「速食」超級電腦設計專用作業系統,直接修改 Linux 來用,並 BlueGene/L 是每顆運算節點(一顆處理器)都是獨立電腦的「Multicomputer」型態,單靠 3D Torus 網路不足以保證在最短時間內即時傳送所有資料,特別是和計算無關的控制管理訊號,所以動用多種拓樸網路以保證面面俱到,是很正確的手段。

同場加映更誇張的設計:Sun 曾競標美國國防部先進研究計畫署(Defense Advance Research Projects Agency,DARPA)於 2002 年初開始的 High Productivity Computing System,日後更名為 PetaFLOPS 的超級電腦計畫(略早於 NEC 發表地球模擬器),提出驚世駭俗的「Hero」計畫,引進「Proximity Communication」研究成果,透過晶片彼此相鄰的「超高速無線傳輸」(別懷疑),一舉解決頻寬延遲的瓶頸和系統組裝的麻煩。很可惜這案子由 IBM 和 Cray 擊敗 Sun 共同得標,無緣讓世人目睹這令人嘖嘖稱奇的世界奇觀。

雖然超級電腦的可靠性要求不如商業大型主機嚴謹,但看在巨大資料傳輸量的份上,假若自己的家用個人電腦可能一年內因一次訊號錯誤當機,套在超級電腦就可能變成一小時一次了。

也因此,IBM 在 BlueGene/L 引入許多除錯技術,由小到大,從晶片(所有記憶體皆受到 ECC 保護以修正單位元錯誤)到系統(所有節點和網路都有自我錯誤監測,而最重要的 3D Torus 網路則動用超過 4 種數學除錯方式以保障資料傳輸的正確性)。當然,低發熱量的系統單晶片,也降低超級電腦因過熱而不穩的可能性。

承繼 IBM BlueGene/L 精神的 Fujitsu A64FX

這些年來,伺服器大廠紛紛放棄開發自家處理器,改投向「開放系統」的懷抱,但 Fujitsu 仍持之以恆研發高階處理器,如 GS 系列大型主機、Unix 伺服器的 SPARC64、因 2011 年「京」(K-Computer)超級電腦專案誕生的 SPARC64fx。

讓 SPARC64fx 轉戰 ARM 指令集的 A64FX,堪稱三者集大成,也讓 ARM 指令集相容處理器,一舉登天,擁有商用大型主機(Mainframe)的高可靠度、高階伺服器的高效能,與超級電腦最需要的低能耗比,身為「後京」(Post-K)時代的日系超級電腦心臟,性能目標是達到 2011 年「京」的 100 倍。富岳搶下 Top500 榜首就是成果,且計畫進度還比表訂的 2021 年量產出貨提前甚多。

A64FX 主要特性如下:

  • 台積電 7 奈米 FinFET 製程,87.86 億電晶體,台積電 CoWos 2.5D 封裝包 4 顆 8GB 容量 HBM2 記憶體,兼顧縮減面積與提升記憶體頻寬。
  • 基本上是替換指令集的 SPARC64 XIfx,從核心微架構到基礎結構皆大同小異,但系統記憶體改用包在一起的 32GB HBM2,卻能大幅精簡空間。
  • 48 個計算核心和 4 個處理 I/O 作業的輔助核心,切成 4 塊 CMG(Core Memory Group),每個 CMG 有 13 個核心(12 運算+1 輔助 I/O)、8MB L2 快取記憶體、8MB HBM2 記憶體。CMG 規畫也與 SPARC64 XIfx 大同小異,僅核心數略有差異。
  • SIMD 浮點運算「順勢」使用 ARM 官方制定的 SVE(Scalable Vector Extension)指令集,理論浮點運算性能達到 2.7TeraFlops,是前代 SPARC64 XIfx 的 2.5 倍,資料格式也支援人工智慧需要的 FP16 與 INT16/8。

ARM 的 SVE 不僅「比英特爾 AVX-512 更富有向量電腦的傳統風味」,也有個有趣的 MOVPRFX 指令,用來彌補 ARM 邁進 64 位元後,為了提供 32 個暫存器(需要 5 位元指定一個暫存器,4 個就是 20 位元)犧牲掉的 FMA4 四運算元浮點乘積和(A×B+C=D)。一旦執行三運算元的 FMA(A×B+C=C),會覆蓋掉一個暫存器的原始內容。

MOVPRFX 指令可預先經由前置碼(Prefix),「更名」運算目標暫存器,以保留其內容。而 A64FX 的內部執行單元則會將接連的 MOVPRFX 和 FMA3 兩個指令合而為一,變相實作 FMA4,掩蓋執行兩個指令的額外延遲。

  • 高可靠度則比照 SPARC64fx 辦理,大型主機等級的資料可用性,讓整顆晶片大部分都受到 ECC 單位元錯誤修正和 Parity 糾錯機制保護。
  • 多處理器匯流排採用演進於「京」超級電腦的第三代「Tofu」(豆腐),6D Mesh/Torus 結構。
  • 和 BlueGene/L一樣高度模組化設計,一個機櫃框體(Rack)可置入 384 顆 A64FX,18432 個運算核心,單機櫃理論效能超過 1PetaFlops。
  • 富岳由 396 個機櫃框體組成,152,064 顆 A64FX,Top500 測定性能為 415PetaFlops。

「熱情擁抱現成資源」的弦外之音

Fujitsu 和理化學研究所在 2019 年 4 月 15 日簽訂製造出貨安裝合約,11 月富岳試作機拿下 Green500 第一名,12 月 2 日就開始出貨 6 個機櫃框體,全數 396 個在 2020 年 5 月 13 日全部搬入理化學研究所,速度真的很快,當年 IBM BlueGene/L 的「速食」風格,在 Fujitsu A64FX 也一覽無遺。

況且,Fujitsu 還享用那時 IBM 還體驗不到的「完整 IP 授權、最佳化電子輔助設計工具與相關函式庫、專業晶圓代工」三位一體的成熟產業生態體系,大量引用「現成資源」加速產品研發與驗證,降低成本,不限硬體,一併擁抱蓬勃發展中的 ARM 軟體資源,在「沿用市售標準品」和「拚死硬幹特規貨」中取得平衡點。這是 Fujitsu 在高效能運算處理器的「語言」,放棄 SPARC 轉向 ARM 背後最重要的弦外之音。

最後,順帶一提,如果台積電繼續維持製程優勢,英特爾真的還有機會追上來嗎(官方預定 2021 年 7 奈米、2023 年 5 奈米、2025 年 3 奈米、2027 年 2 奈米、2029 年 1.4 奈米)?還是昔日傲視世界的半導體製造能力,將就此遭到毀滅性的打擊?值得拭目以待。

查看原始文章

更多科技相關文章

01

路透:輝達擬提高H200晶片產量 因應中國強勁需求

路透社
02

英特爾已測試涉中晶片設備 外界憂可能用於先進製程

路透社
03

迪士尼10億美元注資OpenAI Sora可使用經典角色

路透社
04

美參議員華倫籲黃仁勳出席聽證 說明川普售中國晶片決策

路透社
05

微軟強化 Windows 11,FSE、ASD 助力遊戲體驗升級

科技新報
06

3大電信影音收視榜揭曉 韓綜台劇動漫3大主力

卡優新聞網
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...