電子產(chǎn)業(yè)一站式賦能平臺(tái)

PCB聯(lián)盟網(wǎng)

搜索
查看: 34|回復(fù): 0
收起左側(cè)

理解緊密耦合異構(gòu)系統(tǒng)中的內(nèi)存操作:Grace Hopper超級(jí)芯片指南

[復(fù)制鏈接]

552

主題

552

帖子

4418

積分

四級(jí)會(huì)員

Rank: 4

積分
4418
跳轉(zhuǎn)到指定樓層
樓主
引言
; x* z: x8 `: G1 E$ x0 |5 ]" F高性能計(jì)算(HPC)和人工智能(AI)領(lǐng)域因異構(gòu)系統(tǒng)而發(fā)生了巨大變革,特別是那些集成了GPU的系統(tǒng)。隨著工作負(fù)載越來(lái)越受內(nèi)存限制,優(yōu)化系統(tǒng)內(nèi)部的通信延遲和帶寬變得極為重要。NVIDIA Grace Hopper超級(jí)芯片(GH200)代表了緊密耦合異構(gòu)系統(tǒng)的重大進(jìn)步,提供了統(tǒng)一的地址空間和對(duì)系統(tǒng)所有主內(nèi)存的透明細(xì)粒度訪問(wèn)。
# i4 `2 k, f  `: d8 y3 r
& b' |: a- d8 P' A本文將探討Quad GH200節(jié)點(diǎn)的架構(gòu)(這是瑞士國(guó)家超級(jí)計(jì)算中心Alps超級(jí)計(jì)算機(jī)的基本構(gòu)建塊),并提供有關(guān)如何優(yōu)化這一尖端系統(tǒng)內(nèi)存操作的見(jiàn)解[1]。3 J7 M$ x6 k; b8 y7 |2 o
/ X1 G4 q9 V& u) f) C
9 O5 W8 {& @8 v; \# `" h
架構(gòu)概述7 [- m0 H/ ~5 A. n, e% ]+ p. O
Quad GH200節(jié)點(diǎn)由四個(gè)GH200超級(jí)芯片組成,每個(gè)超級(jí)芯片結(jié)合了一個(gè)Grace CPU和一個(gè)Hopper GPU。這些單元通過(guò)NVLink和緩存一致性互連全面互聯(lián)。讓我們來(lái)看看關(guān)鍵組件:
5 b; m5 [; m  {2 B5 R
7 y; h" T. Q3 |  b7 p& u! K圖1:Quad GH200節(jié)點(diǎn)的架構(gòu)' N  r, g- b$ Z- l" I2 K8 }

3 J* y; m7 b# S7 S, v如圖1所示,每個(gè)GH200超級(jí)芯片具有以下特點(diǎn):
' X7 b, ^6 w) t9 @# c2 U; I% J
  • 一個(gè)Grace CPU,有72個(gè)Arm Neoverse V2核心
  • 一個(gè)Hopper GPU,有132個(gè)流式多處理器(SMs)
  • 96GB的HBM3內(nèi)存(4000 GB/s帶寬)
  • 128GB的LPDDR5內(nèi)存(500 GB/s帶寬)- L- p% U1 T  \6 J0 _8 ^) _' e' b
    9 g( q: F% E* V; b8 u  Y
    GH200單元通過(guò)以下方式互連:' g* U" x% w. y0 a
  • NVLink:每個(gè)方向150 GB/s(總共900 GB/s)
  • Grace互連:每個(gè)方向150 GB/s
  • NVLink-C2C(C2C):每個(gè)方向450 GB/s(總共900 GB/s)
    9 C) j; m5 V. M- F6 u# F4 E+ S
    6 W% W) S, K, r3 c  J" u4 ]
    每個(gè)節(jié)點(diǎn)還通過(guò)單獨(dú)的網(wǎng)絡(luò)接口卡連接到Slingshot網(wǎng)絡(luò),每個(gè)方向提供25 GB/s(總共200 GB/s)的節(jié)點(diǎn)間通信。" I# \; W& X- q* M
    - V) Q( @" T5 p6 n2 @8 Q
    內(nèi)存層次結(jié)構(gòu)和NUMA/ R8 V" n  p3 d+ S4 m9 R4 p
    Quad GH200系統(tǒng)呈現(xiàn)出復(fù)雜的內(nèi)存層次結(jié)構(gòu),具有非統(tǒng)一內(nèi)存訪問(wèn)(NUMA)特性。
    - ?4 ?" e& n+ O+ Z7 y4 i! f每個(gè)GH200由兩個(gè)NUMA節(jié)點(diǎn)組成:
  • 與Grace親和的LPDDR5內(nèi)存
  • 與Hopper親和的HBM3內(nèi)存
    ; G: _  N8 s1 M# n[/ol]
    * |  j% b; X; F* P6 C* \總的來(lái)說(shuō),一個(gè)Quad GH200節(jié)點(diǎn)有八個(gè)NUMA節(jié)點(diǎn),四個(gè)與Grace CPU相關(guān)(NUMA 0-3),四個(gè)與Hopper GPU相關(guān)(NUMA 4, 12, 20, 28)。
    ' D1 C/ V* F4 j- C/ N7 E# E. v+ U+ I5 w& F) F3 U& L: ]
    理解數(shù)據(jù)路徑
    % I. s$ o9 P- O2 F) F為了優(yōu)化內(nèi)存操作,理解不同類型操作的數(shù)據(jù)路徑非常重要。讓我們來(lái)看看讀取、寫(xiě)入和復(fù)制操作:' [/ u  [2 s9 V; w; ?) u) _

    : c* W0 X; ^6 `  [) C* l圖2:Hopper操作的數(shù)據(jù)路徑; M! G4 A( b* H6 y, _

    5 \. G$ U) ^% o2 A' e+ p$ L圖2說(shuō)明了Hopper GPU執(zhí)行的讀取、寫(xiě)入和復(fù)制操作的數(shù)據(jù)路徑。
    " U+ `! x$ o4 v. p注意:
    4 o$ `9 ^7 B, M3 m
  • 本地HBM訪問(wèn)具有最短的路徑和最高的帶寬(4000 GB/s)
  • 跨C2C互連的操作限制在450 GB/s
  • 復(fù)制操作可能需要多次互連遍歷,影響可達(dá)到的帶寬
    1 i6 K' \) l" E4 h
    3 Y& @& ^: U+ `: D: E( [
    內(nèi)存操作基準(zhǔn)測(cè)試' E( H6 \) n/ {
    為了理解Quad GH200系統(tǒng)的性能特征,我們將檢查各種微基準(zhǔn)測(cè)試的結(jié)果:( V; W8 m  n( Z& v- I0 X
    1. 讀取和寫(xiě)入操作:
    . S  e8 a$ q9 C, I
    ) _8 H6 b2 v: l! p圖3:讀取和寫(xiě)入吞吐量
    ' P* G  b. C2 L+ a# n; |( {1 ~. w2 W% g/ w  y6 c: L
    圖3顯示了Grace和Hopper在不同類型內(nèi)存上進(jìn)行讀取和寫(xiě)入操作的吞吐量,包括空閑條件下和C2C互連負(fù)載下的情況。9 Y: H9 @! n% A
    主要觀察:
    0 Q+ |! E2 y/ n2 a, y3 V8 j5 ?( V
  • Hopper通常在本地內(nèi)存訪問(wèn)時(shí)更好地利用C2C互連
  • 跨越C2C和NVLink的操作會(huì)產(chǎn)生顯著開(kāi)銷
  • 在負(fù)載下,對(duì)HBM的寫(xiě)入受影響最大,特別是對(duì)Grace而言( f6 n# s- c( ^4 Z
    ) J+ Z8 l6 D$ M/ o: {1 b! K
    2. 復(fù)制操作:" v  a* Q5 g; G
    / y( Z$ l6 ]4 L( C
    圖4:復(fù)制吞吐量9 l) ^0 }2 H+ I, m2 B5 w
    # D( T2 `9 ^  k2 J. v0 y6 S/ s4 \
    圖4說(shuō)明了Grace和Hopper在不同源和目標(biāo)內(nèi)存類型之間進(jìn)行復(fù)制操作的吞吐量。
    : |% S$ B$ }2 n4 D: ]* m8 Q" b值得注意的發(fā)現(xiàn):
    " ]7 j* K2 p" M% _+ C- D
  • 內(nèi)存?zhèn)鬏敶嬖诓粚?duì)稱性(例如,Grace在從本地內(nèi)存復(fù)制到對(duì)等GH200時(shí)達(dá)到更高的吞吐量)
  • Hopper在跨越多個(gè)互連時(shí)通常能更有效地利用可用帶寬
    . R9 P7 k2 A9 D, g5 V0 V* ^: ~+ r8 K

    : V/ a0 E4 A7 V+ E& w3. 延遲:
    6 ~5 V/ u, z/ n% f* _2 D1 M+ C . @; P; ~+ L: x' k2 f+ p* h3 v
    圖5:主內(nèi)存訪問(wèn)延遲6 t$ s- Q$ l, T' I% Y; d
    , Y! R8 S$ @* z: y
    圖5顯示了Grace和Hopper的主內(nèi)存訪問(wèn)延遲。有趣的是,跨越C2C互連的訪問(wèn)(Grace到HBM和Hopper到DDR)表現(xiàn)出相似的延遲。8 {, o+ H6 m" ^# K) ?; h

    5 d! a- c5 W5 ?" n. ]* X& b優(yōu)化應(yīng)用程序
    & q. e$ y+ c4 }理解這些性能特征對(duì)于在Quad GH200系統(tǒng)上優(yōu)化應(yīng)用程序非常重要。讓我們來(lái)看一些示例工作負(fù)載及其基于內(nèi)存放置的性能:
    - V1 A4 H! u+ ], f. A/ D* `1. GEMM(通用矩陣乘法):2 N& d6 b/ n% H5 \
    . W3 U5 {, N5 N2 I: t. s
    圖6:GEMM性能* D& Z' p& s* P% W, \5 o

    & _; j1 `2 [! E* c- ]- A. x% [; {圖6顯示了矩陣放置在不同內(nèi)存位置的GEMM操作性能。主要要點(diǎn):% b: S, b; u+ K( I0 `6 H, P. u  x. J
  • HBM放置對(duì)于最佳性能至關(guān)重要,特別是對(duì)于使用Tensor Cores的數(shù)據(jù)類型
  • 即使將一個(gè)矩陣移出HBM也可能顯著影響性能6 v% K+ o5 z2 u% k; @; r
    $ c/ i# B# N+ P& D
    2. LLM(大型語(yǔ)言模型)推理:: @; F, l; s" d
    ' E5 H6 D/ Z9 X, \0 d* L6 a" S) Y, }
    圖7:LLM推理時(shí)間' @8 W% F, e+ n* a1 ?5 `; `8 t3 W

    8 U! O* x4 `& W2 z4 Z# N圖7顯示了不同模型和內(nèi)存分配的LLM推理時(shí)間。觀察結(jié)果:/ e# k. g6 I  |9 O; \
  • 內(nèi)存訪問(wèn)速度對(duì)吞吐量起著根本作用
  • HBM分配提供最佳性能,而對(duì)等內(nèi)存訪問(wèn)顯著影響推理時(shí)間" O* o& v; O. n  X% A" k

    / u6 _. h2 {: k  H3. NCCL(NVIDIA集體通信庫(kù))操作:
    ( U9 M& R/ x1 F * s0 J1 b- O% c
    圖8:NCCL All Reduce和All Gather性能
    % E8 w8 y6 `" i* i" C4 y2 @2 o$ V2 f9 \  M: F  A* R
    圖8說(shuō)明了節(jié)點(diǎn)內(nèi)All Reduce和All Gather操作的性能。關(guān)鍵點(diǎn):
    & r6 H8 N: z6 S( c
  • 超級(jí)芯片局部性比使用的內(nèi)存類型更重要
  • 同一GH200內(nèi)存大大優(yōu)于對(duì)等訪問(wèn)0 l" ~: ]5 _) i  D0 P
    ) n" W$ p+ o6 L1 H
    最佳實(shí)踐和建議
    3 S8 Z. ?& _1 d0 R基于從這些基準(zhǔn)測(cè)試和應(yīng)用程序示例中獲得的見(jiàn)解,以下是在Quad GH200系統(tǒng)上優(yōu)化內(nèi)存操作的一些最佳實(shí)踐:
  • 優(yōu)先使用HBM:盡可能將性能關(guān)鍵數(shù)據(jù)放在本地HBM內(nèi)存中,特別是對(duì)于GPU密集型工作負(fù)載。
  • 最小化跨GH200訪問(wèn):盡量將數(shù)據(jù)保持在執(zhí)行計(jì)算的GH200單元本地,因?yàn)閷?duì)等內(nèi)存訪問(wèn)會(huì)導(dǎo)致顯著的性能損失。
  • 謹(jǐn)慎利用統(tǒng)一內(nèi)存:雖然統(tǒng)一內(nèi)存簡(jiǎn)化了編程,但要注意與顯式內(nèi)存管理相比的性能特征。
  • 考慮內(nèi)存?zhèn)鬏數(shù)牟粚?duì)稱性:在設(shè)計(jì)數(shù)據(jù)移動(dòng)模式時(shí),要考慮不同內(nèi)存類型之間復(fù)制操作的不對(duì)稱性。
  • 優(yōu)化集體操作:對(duì)于使用NCCL或類似庫(kù)的應(yīng)用程序,專注于超級(jí)芯片局部性以最大化性能。
  • 分析和迭代:使用分析工具識(shí)別應(yīng)用程序中的內(nèi)存訪問(wèn)模式,并根據(jù)系統(tǒng)的性能特征迭代優(yōu)化數(shù)據(jù)放置。
    $ {1 t( Y/ V4 z- M! q" B[/ol]% n$ }) _: s+ h3 P
    結(jié)論
    ! j! m. X+ S4 C' N+ z6 h( PQuad GH200節(jié)點(diǎn)為HPC和AI工作負(fù)載提供了強(qiáng)大的計(jì)算能力和內(nèi)存帶寬。然而,要充分利用其潛力,開(kāi)發(fā)人員必須理解其復(fù)雜的內(nèi)存層次結(jié)構(gòu)并相應(yīng)地優(yōu)化數(shù)據(jù)放置。通過(guò)遵循本文概述的最佳實(shí)踐并仔細(xì)考慮不同內(nèi)存操作的性能特征,可以顯著提高在這一先進(jìn)異構(gòu)系統(tǒng)上應(yīng)用程序的效率。* T9 o! v* i: X, f- d: K' D  j

    " C" ~  |9 C+ j: A參考文獻(xiàn)9 {+ g4 I* V+ Z" M( I3 i1 g! T' J
    [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.
    6 k; a( q) D  `  A9 ]1 C; Y
      @8 ]+ ~8 u8 sEND
    6 w4 S% \, O4 T6 j/ Z4 A' G3 \5 S) E  H
    - s) u  l( z4 R5 G( E4 L
    0 Q$ F; U, [& S  R( C1 [0 \: S
    軟件申請(qǐng)我們歡迎化合物/硅基光電子芯片的研究人員和工程師申請(qǐng)?bào)w驗(yàn)免費(fèi)版PIC Studio軟件。無(wú)論是研究還是商業(yè)應(yīng)用,PIC Studio都可提升您的工作效能。* d" s6 {6 X: A7 |6 W
    點(diǎn)擊左下角"閱讀原文"馬上申請(qǐng)
    8 J/ v3 X: I& n6 w6 F- |( G
    8 W0 n- I! g9 Z. S歡迎轉(zhuǎn)載0 i" S1 q  i) d

    5 X9 w6 T, c2 ?轉(zhuǎn)載請(qǐng)注明出處,請(qǐng)勿修改內(nèi)容和刪除作者信息!
    ! E, E; e9 ]; _  U& ~- k- ]  F% q, U5 v
    ( W/ Y+ d2 m* W) d* c$ N' ~# c( Z' H; e- r
    0 ^& Q# Y) f% t! w+ W6 c* b

    ! B5 D) J1 t2 I% I1 A
    % ]3 h# K2 ]" o: J# Z. v# x  i; O. ]關(guān)注我們
    / d' }7 m4 a! ?: {; C; _/ k, A
      }# j# j4 z5 l4 A; g" j5 n

    $ X1 b8 G# O1 k1 @ * X# c& L) {2 k3 D' Q6 j8 q
    2 c# ?, `8 M+ W( c; C4 G

    3 C5 U. `/ ?, h$ a, x4 p( }+ o
    4 ]5 w$ p. P5 M8 u! W# x. w+ V

    + a: S: G3 g7 o2 i
                         
    4 F# r1 P1 Q' a* G  f8 K: k; {. F$ Y( V0 P
    . J5 D" A+ E0 o
    + c  s" P* j/ B
    關(guān)于我們:9 Y; |# B) ^* I. R
    深圳逍遙科技有限公司(Latitude Design Automation Inc.)是一家專注于半導(dǎo)體芯片設(shè)計(jì)自動(dòng)化(EDA)的高科技軟件公司。我們自主開(kāi)發(fā)特色工藝芯片設(shè)計(jì)和仿真軟件,提供成熟的設(shè)計(jì)解決方案如PIC Studio、MEMS Studio和Meta Studio,分別針對(duì)光電芯片、微機(jī)電系統(tǒng)、超透鏡的設(shè)計(jì)與仿真。我們提供特色工藝的半導(dǎo)體芯片集成電路版圖、IP和PDK工程服務(wù),廣泛服務(wù)于光通訊、光計(jì)算、光量子通信和微納光子器件領(lǐng)域的頭部客戶。逍遙科技與國(guó)內(nèi)外晶圓代工廠及硅光/MEMS中試線合作,推動(dòng)特色工藝半導(dǎo)體產(chǎn)業(yè)鏈發(fā)展,致力于為客戶提供前沿技術(shù)與服務(wù)。
    " B3 U2 K3 h( g3 q
    2 g% j! v" C3 N% v1 z/ ]. [http://www.latitudeda.com/- E6 H4 H4 v5 O& `
    (點(diǎn)擊上方名片關(guān)注我們,發(fā)現(xiàn)更多精彩內(nèi)容)
  • 發(fā)表回復(fù)

    本版積分規(guī)則


    聯(lián)系客服 關(guān)注微信 下載APP 返回頂部 返回列表