|
引言7 S+ F4 E' D8 {7 v' D
高性能計算(HPC)和人工智能(AI)領(lǐng)域因異構(gòu)系統(tǒng)而發(fā)生了巨大變革,特別是那些集成了GPU的系統(tǒng)。隨著工作負載越來越受內(nèi)存限制,優(yōu)化系統(tǒng)內(nèi)部的通信延遲和帶寬變得極為重要。NVIDIA Grace Hopper超級芯片(GH200)代表了緊密耦合異構(gòu)系統(tǒng)的重大進步,提供了統(tǒng)一的地址空間和對系統(tǒng)所有主內(nèi)存的透明細粒度訪問。
* K! d# W5 R8 ]) L1 `! V
0 r0 M2 D' m6 T$ n; q' F! h本文將探討Quad GH200節(jié)點的架構(gòu)(這是瑞士國家超級計算中心Alps超級計算機的基本構(gòu)建塊),并提供有關(guān)如何優(yōu)化這一尖端系統(tǒng)內(nèi)存操作的見解[1]。
I, P$ X1 ~: I
etd2yxyhk1r640131845344.png (268.61 KB, 下載次數(shù): 0)
下載附件
保存到相冊
etd2yxyhk1r640131845344.png
昨天 01:04 上傳
& {2 T+ ~- [) f Y; ?1 c* Z& J
/ f# c; F% N' }8 j9 N) ~' s n
架構(gòu)概述! H6 C7 B2 j: u# j6 l0 f
Quad GH200節(jié)點由四個GH200超級芯片組成,每個超級芯片結(jié)合了一個Grace CPU和一個Hopper GPU。這些單元通過NVLink和緩存一致性互連全面互聯(lián)。讓我們來看看關(guān)鍵組件:" {( P$ _ r; ]6 ~7 w# y
dn4vw1s5zfv640131845445.png (558.67 KB, 下載次數(shù): 0)
下載附件
保存到相冊
dn4vw1s5zfv640131845445.png
昨天 01:04 上傳
4 ?. f: `! \1 u: B
圖1:Quad GH200節(jié)點的架構(gòu)
6 u0 r9 c( K ^" \5 f. E4 X$ z/ F/ }7 M' R
如圖1所示,每個GH200超級芯片具有以下特點:: G+ l4 s7 w( H* G# E& r
一個Grace CPU,有72個Arm Neoverse V2核心一個Hopper GPU,有132個流式多處理器(SMs)96GB的HBM3內(nèi)存(4000 GB/s帶寬)128GB的LPDDR5內(nèi)存(500 GB/s帶寬)
# H# f) E! G0 E' m; g" P( y4 P' A3 e5 m! j1 W9 d$ _
GH200單元通過以下方式互連:+ H+ E2 H3 I2 c, p
NVLink:每個方向150 GB/s(總共900 GB/s)Grace互連:每個方向150 GB/sNVLink-C2C(C2C):每個方向450 GB/s(總共900 GB/s), \& q$ C! g) o+ O& }
6 e1 `; C& i* @! g a
每個節(jié)點還通過單獨的網(wǎng)絡(luò)接口卡連接到Slingshot網(wǎng)絡(luò),每個方向提供25 GB/s(總共200 GB/s)的節(jié)點間通信。* \/ C8 J! |' |8 g9 W
+ w- N" v% @) E( N0 `! Z1 h
內(nèi)存層次結(jié)構(gòu)和NUMA
& O9 U9 v0 w# ZQuad GH200系統(tǒng)呈現(xiàn)出復(fù)雜的內(nèi)存層次結(jié)構(gòu),具有非統(tǒng)一內(nèi)存訪問(NUMA)特性。( T) C& |, O" o$ j: U3 y! n
每個GH200由兩個NUMA節(jié)點組成:與Grace親和的LPDDR5內(nèi)存與Hopper親和的HBM3內(nèi)存7 C1 L# G# _# c
[/ol]
# D# c& U; A2 Z3 T" b: W2 {7 u3 s總的來說,一個Quad GH200節(jié)點有八個NUMA節(jié)點,四個與Grace CPU相關(guān)(NUMA 0-3),四個與Hopper GPU相關(guān)(NUMA 4, 12, 20, 28)。
1 a }. S* a' H+ J7 r) ?& x
7 P: S. ?( L& ^9 w% |! f* B3 o/ C4 l理解數(shù)據(jù)路徑3 T* u( t4 \/ {) O. u
為了優(yōu)化內(nèi)存操作,理解不同類型操作的數(shù)據(jù)路徑非常重要。讓我們來看看讀取、寫入和復(fù)制操作:0 G; f7 ?) ?$ {$ t+ Z. X3 O3 v
lbyf5202vbv640131845545.png (490.68 KB, 下載次數(shù): 0)
下載附件
保存到相冊
lbyf5202vbv640131845545.png
昨天 01:04 上傳
1 e$ _( J( u/ M9 x/ \) @9 G# x" O圖2:Hopper操作的數(shù)據(jù)路徑; O- ^8 ?1 J3 b# H' D6 O! y A
% H* E# N1 H$ ?, K2 v$ ~
圖2說明了Hopper GPU執(zhí)行的讀取、寫入和復(fù)制操作的數(shù)據(jù)路徑。8 p n$ C6 ]: W- S
注意:. C7 f- s5 P4 p" [
本地HBM訪問具有最短的路徑和最高的帶寬(4000 GB/s)跨C2C互連的操作限制在450 GB/s復(fù)制操作可能需要多次互連遍歷,影響可達到的帶寬
* V5 G0 G/ O+ g& l" i1 D _2 i0 V* k2 z# ~0 e" @
內(nèi)存操作基準測試
; v7 v/ Q/ n3 T$ j+ U, P# I為了理解Quad GH200系統(tǒng)的性能特征,我們將檢查各種微基準測試的結(jié)果:
# J" p# Q( Z F( I, z1. 讀取和寫入操作:' t9 S1 u) ?- ?! b- q/ A; P
zn3tj0za4tf640131845646.png (153.05 KB, 下載次數(shù): 0)
下載附件
保存到相冊
zn3tj0za4tf640131845646.png
昨天 01:04 上傳
t; C% ]' K. T8 M2 f1 T3 z) b圖3:讀取和寫入吞吐量1 @) v0 I: V! C0 X2 [2 `# S
/ o' M3 F( j0 `! [2 U m+ }: S( ?
圖3顯示了Grace和Hopper在不同類型內(nèi)存上進行讀取和寫入操作的吞吐量,包括空閑條件下和C2C互連負載下的情況。% ]# w% W: a+ J% b
主要觀察:/ f( Z1 o' u$ y. y' [, ]
Hopper通常在本地內(nèi)存訪問時更好地利用C2C互連跨越C2C和NVLink的操作會產(chǎn)生顯著開銷在負載下,對HBM的寫入受影響最大,特別是對Grace而言
" m& J5 t1 R: U9 I
, ]: F2 d$ \( o" g# i2. 復(fù)制操作:- F H* j ]$ L" q& h2 A7 D! L
lhmh55x401p640131845746.png (120.02 KB, 下載次數(shù): 0)
下載附件
保存到相冊
lhmh55x401p640131845746.png
昨天 01:04 上傳
2 ~& E5 a' i* s0 a% A3 n+ z8 P* x$ C( ]! n圖4:復(fù)制吞吐量. C# x. o6 y9 _, R
3 q( h+ w2 K8 V圖4說明了Grace和Hopper在不同源和目標內(nèi)存類型之間進行復(fù)制操作的吞吐量。
% y& [" M5 j: ~( V: w值得注意的發(fā)現(xiàn):
$ }6 F0 X2 S9 l+ `0 j% b- m" Q內(nèi)存?zhèn)鬏敶嬖诓粚ΨQ性(例如,Grace在從本地內(nèi)存復(fù)制到對等GH200時達到更高的吞吐量)Hopper在跨越多個互連時通常能更有效地利用可用帶寬
5 d9 `0 I- S e2 q. x/ u. P* L0 ]4 n0 V6 s/ _
3. 延遲:
$ Y6 X1 |/ l: u, x& ]9 _4 ~7 a
2bha1dosrmk640131845846.png (75.84 KB, 下載次數(shù): 0)
下載附件
保存到相冊
2bha1dosrmk640131845846.png
昨天 01:04 上傳
6 b! t6 [4 f# i' G& U: | F) A4 t
圖5:主內(nèi)存訪問延遲' h; q* G+ ]6 A8 p% J! s
" |+ g& ]0 h' K" z, g; F( C
圖5顯示了Grace和Hopper的主內(nèi)存訪問延遲。有趣的是,跨越C2C互連的訪問(Grace到HBM和Hopper到DDR)表現(xiàn)出相似的延遲。5 @; F1 K! \) j. C+ ~, a; [
8 V0 _' B. T3 {0 Q( Q1 o優(yōu)化應(yīng)用程序; j% A* \/ Z1 f( g. |( O+ x: k
理解這些性能特征對于在Quad GH200系統(tǒng)上優(yōu)化應(yīng)用程序非常重要。讓我們來看一些示例工作負載及其基于內(nèi)存放置的性能:$ W2 W- Z4 A! Z0 R: ~
1. GEMM(通用矩陣乘法):
W: N8 F, j" z5 v+ g8 Q
xwra2nee20t640131845946.png (141.24 KB, 下載次數(shù): 0)
下載附件
保存到相冊
xwra2nee20t640131845946.png
昨天 01:04 上傳
) @9 i0 K: I# N4 x- B/ P( @9 f
圖6:GEMM性能' d% s& S+ ]. f4 y; {# B: }
3 A6 W) s: C% Y) P* P圖6顯示了矩陣放置在不同內(nèi)存位置的GEMM操作性能。主要要點:, `# Z8 I9 b0 a3 O X; D- D
HBM放置對于最佳性能至關(guān)重要,特別是對于使用Tensor Cores的數(shù)據(jù)類型即使將一個矩陣移出HBM也可能顯著影響性能, U9 A t/ Z7 m5 ] ]8 E
( l/ |$ N$ F: h3 X2. LLM(大型語言模型)推理:6 A5 w! u3 `9 d: {! Z( l
20014rdhvzh640131846046.png (60.41 KB, 下載次數(shù): 0)
下載附件
保存到相冊
20014rdhvzh640131846046.png
昨天 01:04 上傳
1 G3 v8 v3 n! ^7 K9 Z1 ^圖7:LLM推理時間
: }' N7 ~# o* A& W% ]; X- E7 I8 V: L; ^
圖7顯示了不同模型和內(nèi)存分配的LLM推理時間。觀察結(jié)果:+ m3 T- w# A$ |/ ]* A) q6 s6 ?' d
內(nèi)存訪問速度對吞吐量起著根本作用HBM分配提供最佳性能,而對等內(nèi)存訪問顯著影響推理時間
" y& o* f2 V5 `8 d
V7 i+ Q* Y* V/ z' A3. NCCL(NVIDIA集體通信庫)操作:. y4 X' w5 C$ b) t) x) g
wtcar1tazwv640131846146.png (98.46 KB, 下載次數(shù): 0)
下載附件
保存到相冊
wtcar1tazwv640131846146.png
昨天 01:04 上傳
K2 n% A) B2 n3 l9 D, z圖8:NCCL All Reduce和All Gather性能1 N: N4 @0 v5 ~( a2 U+ `
6 M8 ~1 R* u; d! m" R/ A* T. |
圖8說明了節(jié)點內(nèi)All Reduce和All Gather操作的性能。關(guān)鍵點:
" G3 e$ i' i+ B% k* \超級芯片局部性比使用的內(nèi)存類型更重要同一GH200內(nèi)存大大優(yōu)于對等訪問+ Y% J0 `! @0 W" ?1 [& P
( J) H* o* O8 B2 H& p; P5 E最佳實踐和建議- A4 _8 g4 ?" o9 ?
基于從這些基準測試和應(yīng)用程序示例中獲得的見解,以下是在Quad GH200系統(tǒng)上優(yōu)化內(nèi)存操作的一些最佳實踐:優(yōu)先使用HBM:盡可能將性能關(guān)鍵數(shù)據(jù)放在本地HBM內(nèi)存中,特別是對于GPU密集型工作負載。最小化跨GH200訪問:盡量將數(shù)據(jù)保持在執(zhí)行計算的GH200單元本地,因為對等內(nèi)存訪問會導(dǎo)致顯著的性能損失。謹慎利用統(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ù)放置。
. q5 }$ `! P: z {[/ol]6 \% Q6 u8 A3 F6 R1 v) S
結(jié)論
5 a J+ |6 V* \9 d( AQuad GH200節(jié)點為HPC和AI工作負載提供了強大的計算能力和內(nèi)存帶寬。然而,要充分利用其潛力,開發(fā)人員必須理解其復(fù)雜的內(nèi)存層次結(jié)構(gòu)并相應(yīng)地優(yōu)化數(shù)據(jù)放置。通過遵循本文概述的最佳實踐并仔細考慮不同內(nèi)存操作的性能特征,可以顯著提高在這一先進異構(gòu)系統(tǒng)上應(yīng)用程序的效率。' @( `4 B- M& U3 j2 `
8 Y3 V* e% g6 @+ A- T參考文獻+ w6 |* T6 b+ W& d |% g+ A0 m. v
[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., v' g! w% C* L- y9 G9 w* Q
8 ?- I6 w$ z. O- [$ M$ G# P& M
END
) K p5 {$ Z2 F( j' ]5 i) {/ ~
- |% b) \, p7 D/ O0 ]% Y, c2 a
$ L+ t6 P% M9 J7 g% h, S軟件申請我們歡迎化合物/硅基光電子芯片的研究人員和工程師申請體驗免費版PIC Studio軟件。無論是研究還是商業(yè)應(yīng)用,PIC Studio都可提升您的工作效能。4 J: ^/ z- a4 u6 v) o) u+ {2 u M Y& m
點擊左下角"閱讀原文"馬上申請
& m+ i' x( _; |4 l0 i1 c9 ~) x3 t! c
歡迎轉(zhuǎn)載
$ e: U* t6 e+ \% Y/ [5 J! `! _) E1 k3 l; E4 o
轉(zhuǎn)載請注明出處,請勿修改內(nèi)容和刪除作者信息!
! w2 @* ?1 u1 Y
. _( R/ E' u! q3 L, u& w5 I2 y6 q4 M* H3 H
6 ^, C/ x3 ^/ H r$ i8 v! I
dwno3zivgzi640131846246.gif (16.04 KB, 下載次數(shù): 0)
下載附件
保存到相冊
dwno3zivgzi640131846246.gif
昨天 01:04 上傳
- N E; z# v9 F N0 n
2 l" E9 N- _. |6 i4 } p關(guān)注我們
* |7 {& E& s' i" ]) f, c
6 \: R. `& @' f; U/ Q) p
6 k: V. Q/ V3 K# y
4rylqec5bdo640131846346.png (31.33 KB, 下載次數(shù): 0)
下載附件
保存到相冊
4rylqec5bdo640131846346.png
昨天 01:04 上傳
0 K- ~( {) O, @1 u
| 9 }9 T; `3 ]9 d d Y
dmhmyzw3c0v640131846446.png (82.79 KB, 下載次數(shù): 0)
下載附件
保存到相冊
dmhmyzw3c0v640131846446.png
昨天 01:04 上傳
& }4 p7 b, z3 Y& L i1 y | 1 V) w* ^8 i$ Z+ R/ d7 B
vjb0ch5fihn640131846546.png (21.52 KB, 下載次數(shù): 0)
下載附件
保存到相冊
vjb0ch5fihn640131846546.png
昨天 01:04 上傳
1 x' E7 m1 Z4 @0 `5 V( h+ e! g4 G
|
2 M% i* _1 w! b8 Q9 ^7 I- `: ]3 F2 R7 g( f& d" k" K- u8 O
8 y% [% K8 i: \. V! k' ?- G) q* D$ ^: e/ v7 z2 @. h. { M4 L
關(guān)于我們:5 a" t# o0 b- J$ j
深圳逍遙科技有限公司(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ù)。
5 i- M6 k# [) F- r* `5 s" L- U9 I6 y- Y/ D0 j
http://www.latitudeda.com/
( _* T$ X7 n$ w" D: m(點擊上方名片關(guān)注我們,發(fā)現(xiàn)更多精彩內(nèi)容) |
|