|
引言- U# l" g) n* g( A+ C
高性能計算(HPC)和人工智能(AI)領(lǐng)域因異構(gòu)系統(tǒng)而發(fā)生了巨大變革,特別是那些集成了GPU的系統(tǒng)。隨著工作負(fù)載越來越受內(nèi)存限制,優(yōu)化系統(tǒng)內(nèi)部的通信延遲和帶寬變得極為重要。NVIDIA Grace Hopper超級芯片(GH200)代表了緊密耦合異構(gòu)系統(tǒng)的重大進步,提供了統(tǒng)一的地址空間和對系統(tǒng)所有主內(nèi)存的透明細(xì)粒度訪問。7 ]( ]( v% R9 k1 w
8 [# h0 W! s* n. g+ d3 I本文將探討Quad GH200節(jié)點的架構(gòu)(這是瑞士國家超級計算中心Alps超級計算機的基本構(gòu)建塊),并提供有關(guān)如何優(yōu)化這一尖端系統(tǒng)內(nèi)存操作的見解[1]。6 q8 C0 y9 r0 j* d' D# Q2 H
etd2yxyhk1r640131845344.png (268.61 KB, 下載次數(shù): 0)
下載附件
保存到相冊
etd2yxyhk1r640131845344.png
昨天 01:04 上傳
* o* E8 K; \, d+ _! }
+ @' Q; X0 I! r* U架構(gòu)概述
( X3 H% v5 C/ ~( _3 u/ CQuad GH200節(jié)點由四個GH200超級芯片組成,每個超級芯片結(jié)合了一個Grace CPU和一個Hopper GPU。這些單元通過NVLink和緩存一致性互連全面互聯(lián)。讓我們來看看關(guān)鍵組件:( t$ V" W: |+ R7 q) u# s: k( J, l2 ?
dn4vw1s5zfv640131845445.png (558.67 KB, 下載次數(shù): 0)
下載附件
保存到相冊
dn4vw1s5zfv640131845445.png
昨天 01:04 上傳
% q4 r' q4 X7 Y" g' `4 N' W圖1:Quad GH200節(jié)點的架構(gòu)
$ Z- J$ |/ [+ W3 q& F y ?' F9 V/ ~. }
如圖1所示,每個GH200超級芯片具有以下特點:
/ o3 s0 Y2 d- j. ]: p一個Grace CPU,有72個Arm Neoverse V2核心一個Hopper GPU,有132個流式多處理器(SMs)96GB的HBM3內(nèi)存(4000 GB/s帶寬)128GB的LPDDR5內(nèi)存(500 GB/s帶寬). |& t3 U( q0 y
, O3 }" m5 c" q: \
GH200單元通過以下方式互連:
% z3 ~! k- }$ a8 QNVLink:每個方向150 GB/s(總共900 GB/s)Grace互連:每個方向150 GB/sNVLink-C2C(C2C):每個方向450 GB/s(總共900 GB/s)3 b5 F: {( ]0 S+ F) |" v# p
+ m) E2 i3 ^8 I! n, @$ K" d
每個節(jié)點還通過單獨的網(wǎng)絡(luò)接口卡連接到Slingshot網(wǎng)絡(luò),每個方向提供25 GB/s(總共200 GB/s)的節(jié)點間通信。
: F M" W/ f$ A% s! z @; U) b F* ~- |3 _$ A
內(nèi)存層次結(jié)構(gòu)和NUMA2 j4 X+ W! D6 s
Quad GH200系統(tǒng)呈現(xiàn)出復(fù)雜的內(nèi)存層次結(jié)構(gòu),具有非統(tǒng)一內(nèi)存訪問(NUMA)特性。
6 k8 i! }7 C4 ^& c0 I( A! p# O每個GH200由兩個NUMA節(jié)點組成:與Grace親和的LPDDR5內(nèi)存與Hopper親和的HBM3內(nèi)存
@3 `& T& {6 R[/ol]
% p# D: `" Z: i; o' s7 T總的來說,一個Quad GH200節(jié)點有八個NUMA節(jié)點,四個與Grace CPU相關(guān)(NUMA 0-3),四個與Hopper GPU相關(guān)(NUMA 4, 12, 20, 28)。
6 m( B9 ?5 f9 X5 m: |1 z7 Q/ }3 K! `) W4 Z$ q& s+ m' Z- T
理解數(shù)據(jù)路徑
9 `5 s0 ~) {8 v' l4 ? H為了優(yōu)化內(nèi)存操作,理解不同類型操作的數(shù)據(jù)路徑非常重要。讓我們來看看讀取、寫入和復(fù)制操作:* k3 b- E( O& Y; |$ \
lbyf5202vbv640131845545.png (490.68 KB, 下載次數(shù): 0)
下載附件
保存到相冊
lbyf5202vbv640131845545.png
昨天 01:04 上傳
; m# Q, H8 Z, r8 S
圖2:Hopper操作的數(shù)據(jù)路徑
6 c0 q0 T( h1 b* d# h, a$ V( D
圖2說明了Hopper GPU執(zhí)行的讀取、寫入和復(fù)制操作的數(shù)據(jù)路徑。) v8 m' |# f* U2 w
注意:- A; p3 L8 o3 s
本地HBM訪問具有最短的路徑和最高的帶寬(4000 GB/s)跨C2C互連的操作限制在450 GB/s復(fù)制操作可能需要多次互連遍歷,影響可達到的帶寬6 {0 p4 d, w$ x2 ?# N
) V, Y" g1 ], N8 M; _內(nèi)存操作基準(zhǔn)測試2 A. i; R5 L! U: }
為了理解Quad GH200系統(tǒng)的性能特征,我們將檢查各種微基準(zhǔn)測試的結(jié)果:
/ D) D' U( J( Q9 _1. 讀取和寫入操作:
# V& q! r+ M N9 H- s) P/ x! I
zn3tj0za4tf640131845646.png (153.05 KB, 下載次數(shù): 0)
下載附件
保存到相冊
zn3tj0za4tf640131845646.png
昨天 01:04 上傳
, H% D% A, @# P5 s& p$ Z0 V圖3:讀取和寫入吞吐量
! R/ |. W1 a7 x: F9 }" m. D. _ [: m! `
圖3顯示了Grace和Hopper在不同類型內(nèi)存上進行讀取和寫入操作的吞吐量,包括空閑條件下和C2C互連負(fù)載下的情況。
. @& f0 p8 o4 u5 b, T; H主要觀察:
3 W8 W" R/ L7 d; xHopper通常在本地內(nèi)存訪問時更好地利用C2C互連跨越C2C和NVLink的操作會產(chǎn)生顯著開銷在負(fù)載下,對HBM的寫入受影響最大,特別是對Grace而言) t* G) C' V- R- K2 A
7 i0 b, ?) z' M' v! G2. 復(fù)制操作:
9 O! r+ p2 r* G1 U% {2 T+ R
lhmh55x401p640131845746.png (120.02 KB, 下載次數(shù): 0)
下載附件
保存到相冊
lhmh55x401p640131845746.png
昨天 01:04 上傳
! F c, l' }3 S% Y1 n0 l) J圖4:復(fù)制吞吐量$ g, k; q1 A1 h& V0 d. j
& r$ o9 n; e# a$ ]2 q' a3 k4 g
圖4說明了Grace和Hopper在不同源和目標(biāo)內(nèi)存類型之間進行復(fù)制操作的吞吐量。
! s) C- T! u! F6 `值得注意的發(fā)現(xiàn):
/ S% S) m5 M" w y& C* z. c7 S7 _內(nèi)存?zhèn)鬏敶嬖诓粚ΨQ性(例如,Grace在從本地內(nèi)存復(fù)制到對等GH200時達到更高的吞吐量)Hopper在跨越多個互連時通常能更有效地利用可用帶寬
5 p# }% N4 [" U5 u
# w* q2 }1 ]8 P+ D! O3. 延遲:
5 t4 Y" t" M8 [/ P
2bha1dosrmk640131845846.png (75.84 KB, 下載次數(shù): 0)
下載附件
保存到相冊
2bha1dosrmk640131845846.png
昨天 01:04 上傳
4 r* P; P6 W6 \+ D5 S圖5:主內(nèi)存訪問延遲: P6 P; X; O% }
) F$ H9 G/ @$ Z/ B8 X6 H7 M圖5顯示了Grace和Hopper的主內(nèi)存訪問延遲。有趣的是,跨越C2C互連的訪問(Grace到HBM和Hopper到DDR)表現(xiàn)出相似的延遲。
9 @- p& t) @" K; \4 v& a3 J' g: E' ~. l' J
優(yōu)化應(yīng)用程序
+ B4 c" p4 k. h1 `1 k6 `- G1 h4 N理解這些性能特征對于在Quad GH200系統(tǒng)上優(yōu)化應(yīng)用程序非常重要。讓我們來看一些示例工作負(fù)載及其基于內(nèi)存放置的性能:/ B: C G* e5 t, f
1. GEMM(通用矩陣乘法):' O9 g4 K2 I [. S# I8 x4 [* f
xwra2nee20t640131845946.png (141.24 KB, 下載次數(shù): 0)
下載附件
保存到相冊
xwra2nee20t640131845946.png
昨天 01:04 上傳
/ I4 j$ B' B3 t/ D8 Q8 z1 {7 N圖6:GEMM性能
' ]0 w+ B& k* f6 b% ~+ g* q2 j, o7 `6 s9 ?8 Y
圖6顯示了矩陣放置在不同內(nèi)存位置的GEMM操作性能。主要要點:
0 v: {! D8 I& m( J+ O- tHBM放置對于最佳性能至關(guān)重要,特別是對于使用Tensor Cores的數(shù)據(jù)類型即使將一個矩陣移出HBM也可能顯著影響性能
4 a% d/ f0 e# k/ p( I+ \3 G" o
$ Q5 B' o0 |3 G- `2. LLM(大型語言模型)推理:1 v9 s. n, W4 h& s, r w* q
20014rdhvzh640131846046.png (60.41 KB, 下載次數(shù): 0)
下載附件
保存到相冊
20014rdhvzh640131846046.png
昨天 01:04 上傳
0 p, {1 Y+ _" ] g: |( f% F
圖7:LLM推理時間( [2 I. R! H! D
$ d1 z6 K% m1 k1 a+ S
圖7顯示了不同模型和內(nèi)存分配的LLM推理時間。觀察結(jié)果:
- |9 p1 S R9 ]! u: w& w內(nèi)存訪問速度對吞吐量起著根本作用HBM分配提供最佳性能,而對等內(nèi)存訪問顯著影響推理時間
( {4 n5 c! _3 A8 n* b1 g7 V/ Z, K! Y+ b G$ u' y( O$ z6 k" M9 R
3. NCCL(NVIDIA集體通信庫)操作:
7 M- ? l$ p6 w2 k- w
wtcar1tazwv640131846146.png (98.46 KB, 下載次數(shù): 0)
下載附件
保存到相冊
wtcar1tazwv640131846146.png
昨天 01:04 上傳
* z2 U3 B) S! F# f) f0 n圖8:NCCL All Reduce和All Gather性能2 s$ d- ^" Q" s: y# g! ]! X
0 e6 H# O# ^# v7 @, [
圖8說明了節(jié)點內(nèi)All Reduce和All Gather操作的性能。關(guān)鍵點:8 O6 e# D J* b5 [: r5 c4 N! E
超級芯片局部性比使用的內(nèi)存類型更重要同一GH200內(nèi)存大大優(yōu)于對等訪問# m2 Q1 {8 N7 o" M! t% i
H3 _- v V" k, x5 E( K) F9 w最佳實踐和建議
$ I. b0 p$ ?! C4 P( O1 @* s- D基于從這些基準(zhǔn)測試和應(yīng)用程序示例中獲得的見解,以下是在Quad GH200系統(tǒng)上優(yōu)化內(nèi)存操作的一些最佳實踐:優(yōu)先使用HBM:盡可能將性能關(guān)鍵數(shù)據(jù)放在本地HBM內(nèi)存中,特別是對于GPU密集型工作負(fù)載。最小化跨GH200訪問:盡量將數(shù)據(jù)保持在執(zhí)行計算的GH200單元本地,因為對等內(nèi)存訪問會導(dǎo)致顯著的性能損失。謹(jǐn)慎利用統(tǒng)一內(nèi)存:雖然統(tǒng)一內(nèi)存簡化了編程,但要注意與顯式內(nèi)存管理相比的性能特征。考慮內(nèi)存?zhèn)鬏數(shù)牟粚ΨQ性:在設(shè)計數(shù)據(jù)移動模式時,要考慮不同內(nèi)存類型之間復(fù)制操作的不對稱性。優(yōu)化集體操作:對于使用NCCL或類似庫的應(yīng)用程序,專注于超級芯片局部性以最大化性能。分析和迭代:使用分析工具識別應(yīng)用程序中的內(nèi)存訪問模式,并根據(jù)系統(tǒng)的性能特征迭代優(yōu)化數(shù)據(jù)放置。7 g" k7 p5 g9 _+ Y# Q. O @# w- e
[/ol]: Y( v( b0 O2 |& K' h
結(jié)論
A" b' J6 B) i+ LQuad GH200節(jié)點為HPC和AI工作負(fù)載提供了強大的計算能力和內(nèi)存帶寬。然而,要充分利用其潛力,開發(fā)人員必須理解其復(fù)雜的內(nèi)存層次結(jié)構(gòu)并相應(yīng)地優(yōu)化數(shù)據(jù)放置。通過遵循本文概述的最佳實踐并仔細(xì)考慮不同內(nèi)存操作的性能特征,可以顯著提高在這一先進異構(gòu)系統(tǒng)上應(yīng)用程序的效率。' X+ N% A/ Q8 Y. S8 E( x# j
; a: q, r1 g% d& F5 a7 S2 E9 ?參考文獻5 h& i% X6 N0 e+ A+ n. `1 `
[1] L. Fusco et al., "Understanding Data Movement in Tightly Coupled Heterogeneous Systems: A Case Study with the Grace Hopper Superchip," arXiv preprint arXiv:2408.11556v2, Aug. 2024.8 W" ^ l0 M8 N) w
0 u# {& m1 L6 y* t& y z
END
( e( W- W+ Q2 {, j" ^8 K6 \+ q4 _7 e7 w0 P/ h0 y- K( s
4 u+ n% H" W" o t, J3 ^軟件申請我們歡迎化合物/硅基光電子芯片的研究人員和工程師申請體驗免費版PIC Studio軟件。無論是研究還是商業(yè)應(yīng)用,PIC Studio都可提升您的工作效能。
$ F0 k! B/ O# ]' l6 C. q/ \0 g點擊左下角"閱讀原文"馬上申請2 C. @- O; ?* m$ v. j% x. V( _
8 E2 C# `/ w2 a# \% w( K- R
歡迎轉(zhuǎn)載( W+ T! l: D$ s9 H5 G& |
" l' O" g. Y. r
轉(zhuǎn)載請注明出處,請勿修改內(nèi)容和刪除作者信息!" p1 Q& \, O2 m3 q& L
6 U- U; z+ ?8 t* ^. N9 Z a
F5 j v8 w; d4 l& z
6 p5 j0 \% i% H9 d
dwno3zivgzi640131846246.gif (16.04 KB, 下載次數(shù): 0)
下載附件
保存到相冊
dwno3zivgzi640131846246.gif
昨天 01:04 上傳
7 G, Q: {& h# E% B, E1 ?
$ x- w. s2 r8 D$ e
關(guān)注我們
) {3 T$ O; ?4 i
% _) J R6 R! J0 F5 J0 M
/ L- ^0 S. N4 G4 o
4rylqec5bdo640131846346.png (31.33 KB, 下載次數(shù): 0)
下載附件
保存到相冊
4rylqec5bdo640131846346.png
昨天 01:04 上傳
, J" V. i: o# u s. `) [; j | 3 V+ R* ]5 R8 S7 b. e
dmhmyzw3c0v640131846446.png (82.79 KB, 下載次數(shù): 0)
下載附件
保存到相冊
dmhmyzw3c0v640131846446.png
昨天 01:04 上傳
. D8 |+ m" ^& L9 [/ d) i$ e |
& @2 b5 y6 v, d4 C. c* U6 m
vjb0ch5fihn640131846546.png (21.52 KB, 下載次數(shù): 0)
下載附件
保存到相冊
vjb0ch5fihn640131846546.png
昨天 01:04 上傳
) o1 s( f3 k, e1 g* K3 t | ' O, m8 m& _* N4 P
+ D, q1 R1 r0 V. w) j$ ^
3 U; C E6 b0 [! Z& T' G1 v8 [
( b+ j7 k. l+ M關(guān)于我們:
, x, @3 x" c% Z% p深圳逍遙科技有限公司(Latitude Design Automation Inc.)是一家專注于半導(dǎo)體芯片設(shè)計自動化(EDA)的高科技軟件公司。我們自主開發(fā)特色工藝芯片設(shè)計和仿真軟件,提供成熟的設(shè)計解決方案如PIC Studio、MEMS Studio和Meta Studio,分別針對光電芯片、微機電系統(tǒng)、超透鏡的設(shè)計與仿真。我們提供特色工藝的半導(dǎo)體芯片集成電路版圖、IP和PDK工程服務(wù),廣泛服務(wù)于光通訊、光計算、光量子通信和微納光子器件領(lǐng)域的頭部客戶。逍遙科技與國內(nèi)外晶圓代工廠及硅光/MEMS中試線合作,推動特色工藝半導(dǎo)體產(chǎn)業(yè)鏈發(fā)展,致力于為客戶提供前沿技術(shù)與服務(wù)。
# S" h4 g# ~/ S& S9 ~. d! B8 L' G4 l" b( X- q9 Y% R* ?
http://www.latitudeda.com/+ g% G9 S3 a8 ?. C
(點擊上方名片關(guān)注我們,發(fā)現(xiàn)更多精彩內(nèi)容) |
|