|
引言
2 M1 ~% `0 w$ i& _: }6 [( t高性能計算(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)存的透明細粒度訪問。0 ~2 x- `0 K4 n! L5 ?
- b5 a' M7 ~9 L8 b; J' p+ x9 z本文將探討Quad GH200節(jié)點的架構(gòu)(這是瑞士國家超級計算中心Alps超級計算機的基本構(gòu)建塊),并提供有關(guān)如何優(yōu)化這一尖端系統(tǒng)內(nèi)存操作的見解[1]。& E% l0 H" `) Q, @+ v2 L% i$ S
etd2yxyhk1r640131845344.png (268.61 KB, 下載次數(shù): 14)
下載附件
保存到相冊
etd2yxyhk1r640131845344.png
7 天前 上傳
6 c3 S2 g; Y2 C* E( r e* Z) L6 I: ]- Z: Z( k" U# ^( @4 w
架構(gòu)概述: C I6 {' c% ]$ S% A0 ?5 K3 Z
Quad GH200節(jié)點由四個GH200超級芯片組成,每個超級芯片結(jié)合了一個Grace CPU和一個Hopper GPU。這些單元通過NVLink和緩存一致性互連全面互聯(lián)。讓我們來看看關(guān)鍵組件:, ]0 X0 r1 S: c
dn4vw1s5zfv640131845445.png (558.67 KB, 下載次數(shù): 13)
下載附件
保存到相冊
dn4vw1s5zfv640131845445.png
7 天前 上傳
6 m( Y0 M. w4 r' V$ r( X
圖1:Quad GH200節(jié)點的架構(gòu)
% F! k! `0 a8 i; J% R H, l8 @$ d( g5 X. I% X( @" w
如圖1所示,每個GH200超級芯片具有以下特點:
, Z$ |) B/ w& {- c* @一個Grace CPU,有72個Arm Neoverse V2核心一個Hopper GPU,有132個流式多處理器(SMs)96GB的HBM3內(nèi)存(4000 GB/s帶寬)128GB的LPDDR5內(nèi)存(500 GB/s帶寬)
! G8 w! }" s# g& N+ T' l/ s, a+ ?" B8 K, J9 d) D1 V% f3 b5 [1 b
GH200單元通過以下方式互連:- v/ o: |8 e# ~& V) y% ?/ @- f
NVLink:每個方向150 GB/s(總共900 GB/s)Grace互連:每個方向150 GB/sNVLink-C2C(C2C):每個方向450 GB/s(總共900 GB/s)
. S o9 ?0 g+ y" O$ A
. A! k2 A( F- @3 [2 l# G每個節(jié)點還通過單獨的網(wǎng)絡(luò)接口卡連接到Slingshot網(wǎng)絡(luò),每個方向提供25 GB/s(總共200 GB/s)的節(jié)點間通信。
- |0 L4 J9 e9 d% X8 H1 A$ J1 z. c; r
內(nèi)存層次結(jié)構(gòu)和NUMA2 N) N6 J5 V1 O( s
Quad GH200系統(tǒng)呈現(xiàn)出復(fù)雜的內(nèi)存層次結(jié)構(gòu),具有非統(tǒng)一內(nèi)存訪問(NUMA)特性。
' C9 s% L+ o3 }+ f8 d/ _每個GH200由兩個NUMA節(jié)點組成:與Grace親和的LPDDR5內(nèi)存與Hopper親和的HBM3內(nèi)存- H1 x9 U% M+ f
[/ol]
4 c$ n; X( K; m* v% C, F: z5 m- l總的來說,一個Quad GH200節(jié)點有八個NUMA節(jié)點,四個與Grace CPU相關(guān)(NUMA 0-3),四個與Hopper GPU相關(guān)(NUMA 4, 12, 20, 28)。: ?; {# |0 y( G+ J l( _# q
, p2 m) r0 h- ?7 h$ Y# V理解數(shù)據(jù)路徑
6 p5 d" @% a! d+ u; T9 r為了優(yōu)化內(nèi)存操作,理解不同類型操作的數(shù)據(jù)路徑非常重要。讓我們來看看讀取、寫入和復(fù)制操作: m( F; Q6 T- p; M" V- Z
lbyf5202vbv640131845545.png (490.68 KB, 下載次數(shù): 11)
下載附件
保存到相冊
lbyf5202vbv640131845545.png
7 天前 上傳
6 f4 w' [) ~/ G2 I/ L圖2:Hopper操作的數(shù)據(jù)路徑
- n" \. q4 T* f# ^6 K1 g8 `! ?; i. D8 [. f3 P9 b
圖2說明了Hopper GPU執(zhí)行的讀取、寫入和復(fù)制操作的數(shù)據(jù)路徑。
% p3 N8 G* s) T- r( r; K0 w注意:, T0 L, D" S2 p$ ?* A+ a5 V
本地HBM訪問具有最短的路徑和最高的帶寬(4000 GB/s)跨C2C互連的操作限制在450 GB/s復(fù)制操作可能需要多次互連遍歷,影響可達到的帶寬8 o+ _; Q( @' Z. ^
8 T& v$ \* y. s* H. d8 d
內(nèi)存操作基準測試
; S& o: c: N; L M* D& |8 F為了理解Quad GH200系統(tǒng)的性能特征,我們將檢查各種微基準測試的結(jié)果:
/ s0 S* S. L j! e! `1. 讀取和寫入操作:
0 T; B0 y g6 U3 n0 _" M/ b) I1 O! b
zn3tj0za4tf640131845646.png (153.05 KB, 下載次數(shù): 13)
下載附件
保存到相冊
zn3tj0za4tf640131845646.png
7 天前 上傳
2 _( b( L% ^" D6 w, ~) _9 I2 i S9 t
圖3:讀取和寫入吞吐量
0 r6 s' T O. _* E+ r m# }( s& N& ?5 r6 Z1 T: Y
圖3顯示了Grace和Hopper在不同類型內(nèi)存上進行讀取和寫入操作的吞吐量,包括空閑條件下和C2C互連負載下的情況。- V# r' a: y: Y" O0 B
主要觀察:( T7 D, O4 W/ k+ r
Hopper通常在本地內(nèi)存訪問時更好地利用C2C互連跨越C2C和NVLink的操作會產(chǎn)生顯著開銷在負載下,對HBM的寫入受影響最大,特別是對Grace而言# L( m e- t4 B9 ?/ N" ]. n6 X
8 p- ^$ @# n* x; o6 f2. 復(fù)制操作:8 z$ U8 w; d0 C
lhmh55x401p640131845746.png (120.02 KB, 下載次數(shù): 10)
下載附件
保存到相冊
lhmh55x401p640131845746.png
7 天前 上傳
7 V! Z/ C3 x7 O$ [5 E
圖4:復(fù)制吞吐量
! B. `. F) _' {7 E+ d$ m! v# L% q9 Z" V; I; }' q* [
圖4說明了Grace和Hopper在不同源和目標內(nèi)存類型之間進行復(fù)制操作的吞吐量。
; n9 o; t. L7 G# a1 j( j值得注意的發(fā)現(xiàn):/ y5 L# U+ I' D; }) Z
內(nèi)存?zhèn)鬏敶嬖诓粚ΨQ性(例如,Grace在從本地內(nèi)存復(fù)制到對等GH200時達到更高的吞吐量)Hopper在跨越多個互連時通常能更有效地利用可用帶寬
) Z' R+ S: ^: C0 J) j2 l- s3 `/ w5 g4 l- k: c1 L
3. 延遲:
) M* u9 w8 Q' c# X
2bha1dosrmk640131845846.png (75.84 KB, 下載次數(shù): 14)
下載附件
保存到相冊
2bha1dosrmk640131845846.png
7 天前 上傳
$ T6 ?- f* @1 }6 L( i" Q7 N3 ]$ [圖5:主內(nèi)存訪問延遲; N3 m5 Q Q4 P; P
; }0 u' e+ z+ Q3 X
圖5顯示了Grace和Hopper的主內(nèi)存訪問延遲。有趣的是,跨越C2C互連的訪問(Grace到HBM和Hopper到DDR)表現(xiàn)出相似的延遲。, B' [; V. B* H; g: A6 g
7 w6 d9 t. m" q. t. X
優(yōu)化應(yīng)用程序
/ U' W- |9 v1 x% a& f4 C1 H( N理解這些性能特征對于在Quad GH200系統(tǒng)上優(yōu)化應(yīng)用程序非常重要。讓我們來看一些示例工作負載及其基于內(nèi)存放置的性能:9 ]6 a) J4 A/ z8 O3 o. b* Y# P! x
1. GEMM(通用矩陣乘法):
' k9 Y8 j! q$ z- o) M1 j* A0 L
xwra2nee20t640131845946.png (141.24 KB, 下載次數(shù): 14)
下載附件
保存到相冊
xwra2nee20t640131845946.png
7 天前 上傳
( J" H' G4 ^7 P8 M5 c5 g4 u$ ^圖6:GEMM性能
$ Y$ m+ O9 F$ X! _+ C, _& g" j8 B6 `8 o6 _ ]: W2 f& U$ U; c
圖6顯示了矩陣放置在不同內(nèi)存位置的GEMM操作性能。主要要點:
- U1 Y/ u- A) O: v8 N' dHBM放置對于最佳性能至關(guān)重要,特別是對于使用Tensor Cores的數(shù)據(jù)類型即使將一個矩陣移出HBM也可能顯著影響性能
) ~$ k. I- Z$ G9 n5 t" n+ u$ e0 @$ k- v* J1 \) w! g
2. LLM(大型語言模型)推理:
* y/ h9 e8 u5 a+ s" |, _& o, M
20014rdhvzh640131846046.png (60.41 KB, 下載次數(shù): 12)
下載附件
保存到相冊
20014rdhvzh640131846046.png
7 天前 上傳
5 X( P( r4 J3 D7 A6 q; g圖7:LLM推理時間
& Y9 i0 p; H4 T' r2 f4 F. c* I+ a3 _
圖7顯示了不同模型和內(nèi)存分配的LLM推理時間。觀察結(jié)果:3 Y, f* S1 ]& |9 {7 X
內(nèi)存訪問速度對吞吐量起著根本作用HBM分配提供最佳性能,而對等內(nèi)存訪問顯著影響推理時間
- H7 d5 B, L5 b3 K
3 K8 k: K! `+ [ C# k3. NCCL(NVIDIA集體通信庫)操作:0 f( P* d+ W- m. @* t( Z
wtcar1tazwv640131846146.png (98.46 KB, 下載次數(shù): 12)
下載附件
保存到相冊
wtcar1tazwv640131846146.png
7 天前 上傳
! u4 Z2 a8 p9 V9 Z/ k0 [圖8:NCCL All Reduce和All Gather性能
6 @; _- L0 S0 m6 N' L2 f3 f8 R) F8 n- u9 v. |2 O& }# M' d7 T
圖8說明了節(jié)點內(nèi)All Reduce和All Gather操作的性能。關(guān)鍵點:
# l! x3 c$ N% |% F; p超級芯片局部性比使用的內(nèi)存類型更重要同一GH200內(nèi)存大大優(yōu)于對等訪問. M! Z1 o: p: |, n$ U. b$ G+ \
9 A) Y9 R2 m- K0 S最佳實踐和建議
) R/ y) i& \5 D0 E4 D% L基于從這些基準測試和應(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ù)放置。4 ]/ C+ v) t' u$ h7 a8 h/ V2 E$ X2 `
[/ol]
) i; ?4 j! X. K# a# d: [. H- d5 O結(jié)論
9 i( d) _8 [5 K- CQuad 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)用程序的效率。
( {+ d+ B n# R/ T7 o* a
$ r+ W) \- `& m) Q% l: v; ?參考文獻) j( i, a, \5 y5 x( p3 J7 A+ m
[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.* Z1 P3 z7 p W/ F
/ k# Q; L9 o7 f5 |6 @
END( Z6 n1 l' C0 Y1 p: u
% X/ X9 N' m( q+ V+ G, B! T8 ?* N. X5 o
軟件申請我們歡迎化合物/硅基光電子芯片的研究人員和工程師申請體驗免費版PIC Studio軟件。無論是研究還是商業(yè)應(yīng)用,PIC Studio都可提升您的工作效能。/ C# N; G9 M8 I" U
點擊左下角"閱讀原文"馬上申請
K9 P* K- M: P9 x% m& l. J; K! y! Q# X" w7 w" K( \3 ~5 J
歡迎轉(zhuǎn)載5 m, T0 J6 a `7 S9 w9 S) ]
# G% h \6 }* g! Z8 e5 ^, @
轉(zhuǎn)載請注明出處,請勿修改內(nèi)容和刪除作者信息!# Z4 w9 ~, T H; J
8 X5 [5 O1 E7 m+ B; q5 w B2 I' D6 d( B3 }
% y% n# I- d8 F6 }5 h# @( D$ {
dwno3zivgzi640131846246.gif (16.04 KB, 下載次數(shù): 11)
下載附件
保存到相冊
dwno3zivgzi640131846246.gif
7 天前 上傳
. a0 B4 l6 h5 }. i6 Q
" q2 ]: r1 O6 H關(guān)注我們
0 W; |9 N7 G1 T/ F& |
8 Y7 ^ {: l5 z7 c( v9 f1 ]) ?4 a, u0 a+ ?( \0 ?
4rylqec5bdo640131846346.png (31.33 KB, 下載次數(shù): 12)
下載附件
保存到相冊
4rylqec5bdo640131846346.png
7 天前 上傳
; _3 |. o# u) q6 H5 s
| 6 S& v. L. `, C4 b4 ~ R7 j& x
dmhmyzw3c0v640131846446.png (82.79 KB, 下載次數(shù): 12)
下載附件
保存到相冊
dmhmyzw3c0v640131846446.png
7 天前 上傳
8 Q" l. K8 d( Y. j- p& `
|
: I6 h6 {! W* y3 ]
vjb0ch5fihn640131846546.png (21.52 KB, 下載次數(shù): 13)
下載附件
保存到相冊
vjb0ch5fihn640131846546.png
7 天前 上傳
2 S& g1 ~/ O4 `4 {) o$ H$ `
| 4 k O$ o& {5 g* X
9 A) J' j6 C2 N
. }5 ~ W J" b. Y& H6 y, n+ H( e o( r& A: r" |2 _9 B
關(guān)于我們:7 B" u* ~$ j+ r& O. z
深圳逍遙科技有限公司(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ù)。
j, E" Z2 F A# C
5 A3 o- B/ m. S* rhttp://www.latitudeda.com/+ e8 e: i8 b% M& [& A
(點擊上方名片關(guān)注我們,發(fā)現(xiàn)更多精彩內(nèi)容) |
|