|
引言. J4 K6 ]2 }# |* W" l
高性能計(jì)算(HPC)和機(jī)器學(xué)習(xí)(ML)領(lǐng)域已經(jīng)因GPU的廣泛應(yīng)用而發(fā)生了變革。截至2024年6月,世界排名前10的超級(jí)計(jì)算機(jī)中有9個(gè)依賴GPU集群進(jìn)行加速。GPU在計(jì)算方面表現(xiàn)出色,但GPU之間的通信可能成為重大瓶頸,特別是當(dāng)每個(gè)節(jié)點(diǎn)和集群中的GPU數(shù)量增加時(shí)。% m4 d' R; Z7 z$ C2 A9 Q1 Y3 ?
. {0 `; `) |. y9 g傳統(tǒng)上,多GPU通信由CPU管理。然而,近期以GPU為中心的通信進(jìn)展正在挑戰(zhàn)這一范式,減少CPU參與,賦予GPU更多通信任務(wù)自主權(quán),并解決多GPU通信與計(jì)算之間的不匹配問題[1]。
! Z1 r$ ?9 F* ?% o$ a. T/ S5 l# z7 d; U5 Y$ H
dln2bfcsmn164029997221.png (97.26 KB, 下載次數(shù): 12)
下載附件
保存到相冊(cè)
dln2bfcsmn164029997221.png
2024-10-1 01:07 上傳
0 i4 v- L5 x( j$ D4 P% }6 s圖1:展示了不同類型的節(jié)點(diǎn)內(nèi)通信方法的數(shù)據(jù)路徑和API調(diào)用。
7 b% m1 c' K1 c% @( K4 t4 \" ?
8 q6 Q0 V) G5 K4 v$ `, J4 ]理解GPU中心通信* M. q+ U) S$ ?
GPU中心通信可以廣泛定義為減少CPU在多GPU執(zhí)行關(guān)鍵路徑中參與的機(jī)制。這包括供應(yīng)商層面的改進(jìn)(賦予GPU通信自主權(quán))和利用這些改進(jìn)的用戶層面實(shí)現(xiàn)。
/ d* G! e) P: p7 A2 a% b0 H6 W, p* S4 z3 ?) Y+ |4 N! A3 s
GPU中心通信主要分為兩類:/ k" k4 m' {0 F' c) y3 Z! ^- a
節(jié)點(diǎn)內(nèi)通信:在單個(gè)節(jié)點(diǎn)內(nèi)進(jìn)行通信,該節(jié)點(diǎn)包含多個(gè)連接到共享內(nèi)存主機(jī)的GPU卡。節(jié)點(diǎn)間通信:跨多個(gè)節(jié)點(diǎn)進(jìn)行通信,每個(gè)GPU由不同的進(jìn)程控制,不同節(jié)點(diǎn)上的進(jìn)程之間不共享內(nèi)存。# v7 ?* p3 q/ H) [
$ @- r- x( J$ B支持GPU中心通信的關(guān)鍵技術(shù)
& X6 d: N) K2 U幾項(xiàng)技術(shù)為高效的GPU中心通信奠定了基礎(chǔ):
4 C7 O* i" I5 ^( z! T# A6 r5 k' G" ^( H4 F! S
1. 統(tǒng)一虛擬尋址(UVA):在CUDA 4.0中引入,UVA允許節(jié)點(diǎn)內(nèi)的所有GPU和CPU共享同一統(tǒng)一虛擬地址空間,簡(jiǎn)化了內(nèi)存管理。
. G1 C p& g7 i. D* E- \1 |$ c8 X" I" h1 F# v( `$ s
2. GPUDirect:一系列優(yōu)化GPU與其他器件之間數(shù)據(jù)傳輸?shù)募夹g(shù):
4 X0 t* I; k9 l1 r! ^' [+ h2 DGPUDirect RDMA:支持NVIDIA GPU跨節(jié)點(diǎn)直接通信,無(wú)需CPU參與。GPUDirect P2P:允許同一PCIe根復(fù)合體上的GPU之間直接內(nèi)存訪問。
: W; n% L/ w/ u* x
2 `$ z6 \* a1 d5 Z7 K3. NVLink:高帶寬、低延遲的GPU到GPU互連,顯著提高了GPU之間的數(shù)據(jù)傳輸速率。7 w/ s! z( t" k( z0 j
' f0 k( B1 x2 C, G1 s' ]
wlnjf4vbo4i64029997321.png (147.58 KB, 下載次數(shù): 14)
下載附件
保存到相冊(cè)
wlnjf4vbo4i64029997321.png
2024-10-1 01:07 上傳
1 R3 _2 i- u' C2 ~( H% D
圖2:呈現(xiàn)了NVIDIA支持GPU中心通信和網(wǎng)絡(luò)的技術(shù)時(shí)間線。
+ N8 ?! R: o% h2 O4 P0 V1 {3 }- @
4. CUDA IPC:允許同一節(jié)點(diǎn)上的進(jìn)程訪問其他進(jìn)程的器件緩沖區(qū),無(wú)需額外復(fù)制。, X( y" A! `5 C7 i
, x$ j3 s$ G( n( J Q2 j: v2 K
5. 統(tǒng)一內(nèi)存(UVM):創(chuàng)建一個(gè)節(jié)點(diǎn)內(nèi)所有處理器可訪問的單一地址空間,自動(dòng)管理CPU和GPU內(nèi)存之間的數(shù)據(jù)移動(dòng)。
, T& P$ N: O# {- ^9 V% O
2 |% V# ]1 M+ Y9 s! @) k; K+ T7 F+ a( `, b
GPU中心通信庫(kù)
0 R: t" I8 N! C G9 V幾個(gè)庫(kù)已經(jīng)開發(fā)出來(lái)利用這些技術(shù)并提供高效GPU為中心的通信:
% k g t6 R- z* _GPU感知MPI:可以區(qū)分主機(jī)和器件緩沖區(qū)的MPI實(shí)現(xiàn),允許GPU之間直接通信,無(wú)需通過主機(jī)內(nèi)存中轉(zhuǎn)。NCCL (NVIDIA集體通信庫(kù)):提供針對(duì)深度學(xué)習(xí)工作負(fù)載優(yōu)化的拓?fù)涓兄w原語(yǔ),用于GPU間通信。NVSHMEM:NVIDIA對(duì)CUDA器件OpenSHMEM規(guī)范的實(shí)現(xiàn),為進(jìn)程提供高效的單邊put/get API以訪問遠(yuǎn)程數(shù)據(jù)對(duì)象。ROC_SHMEM:AMD對(duì)NVSHMEM的對(duì)應(yīng)實(shí)現(xiàn),為AMD GPU提供類似功能。" S' k& D$ D4 L. O' D
[/ol]
- t6 A. A( G( o6 e: q( M* x! K/ o
9 ^' l. w7 B' y. Z$ B
qgpmxzuax3564029997421.png (123.58 KB, 下載次數(shù): 15)
下載附件
保存到相冊(cè)
qgpmxzuax3564029997421.png
2024-10-1 01:07 上傳
; S2 E" V1 N* A( ?+ `% a S
圖3:展示了各種以GPU為中心的通信方法的節(jié)點(diǎn)間通信數(shù)據(jù)和控制路徑。
; ]# Z3 {: |7 z9 G E2 M, n/ S$ ]
$ ~4 a/ {1 g" A
4 K9 \) l) L$ T; `+ t挑戰(zhàn)和未來(lái)方向+ P" y+ Z- M2 M; L$ x
以GPU為中心的通信提供了顯著優(yōu)勢(shì),但仍存在幾個(gè)挑戰(zhàn)和未來(lái)研究方向:- o8 P. Y2 L2 s" N- W! b
語(yǔ)義不匹配:MPI和GPU編程模型之間存在根本的語(yǔ)義不匹配,因?yàn)镸PI不了解GPU流。這可能導(dǎo)致強(qiáng)制同步和內(nèi)核啟動(dòng)流水線受損。資源爭(zhēng)用:當(dāng)通信和計(jì)算都由GPU線程執(zhí)行時(shí),它們會(huì)爭(zhēng)用相同的有限資源,可能導(dǎo)致性能問題。內(nèi)存一致性:確保內(nèi)核運(yùn)行時(shí)GPU和NIC內(nèi)存之間的一致性可能具有挑戰(zhàn)性,特別是對(duì)于持久內(nèi)核。集體算法設(shè)計(jì):多GPU系統(tǒng)復(fù)雜且非傳統(tǒng)的拓?fù)浣Y(jié)構(gòu),以及GPU對(duì)之間不均勻的帶寬,使設(shè)計(jì)高效的集體通信算法變得復(fù)雜。- h s5 G/ F+ Z5 f
[/ol]. s M g. Q7 g$ ~- h" F1 o) L4 n
未來(lái)研究方向包括:5 B; i4 q; h0 x* M. g
無(wú)CPU網(wǎng)絡(luò):將整個(gè)網(wǎng)絡(luò)棧移至GPU,實(shí)現(xiàn)完全自主的多GPU執(zhí)行。更廣泛的GPU自主性:使GPU能夠處理傳統(tǒng)上由CPU管理的任務(wù),如文件系統(tǒng)訪問和系統(tǒng)調(diào)用。改進(jìn)調(diào)試和分析工具:開發(fā)能夠監(jiān)控和可視化GPU中心通信的工具,包括器件原生傳輸和多GPU環(huán)境中的競(jìng)爭(zhēng)檢測(cè)。' X* K* r; _( h9 Q- h, S8 x
[/ol]- h% E& O1 ^) t! |: X! C- y) u: J
結(jié)論- Z6 @5 @2 r) H$ E
以GPU為中心的通信代表了多GPU執(zhí)行范式的重大轉(zhuǎn)變,提供了提高性能、降低延遲和增強(qiáng)可擴(kuò)展性的潛力。隨著GPU繼續(xù)主導(dǎo)HPC和ML領(lǐng)域,理解和利用這些通信技術(shù)對(duì)于開發(fā)人員、研究人員和系統(tǒng)設(shè)計(jì)師來(lái)說(shuō)將變得越來(lái)越重要,以便從多GPU系統(tǒng)中獲得最大性能。
4 `8 ^1 l% x. e& c8 |4 {7 @2 m8 }6 O1 ]: ~ t
以GPU為中心的通信領(lǐng)域正在迅速發(fā)展,新的硬件特性、軟件庫(kù)和編程模型不斷涌現(xiàn)。了解這些發(fā)展及其影響對(duì)于任何使用大規(guī)模GPU加速系統(tǒng)的人來(lái)說(shuō)都是必要的。
' n; {+ B D6 Q! Y; V
4 {& T; u' F7 ~; c& N展望未來(lái),可以期待GPU中心通信的進(jìn)一步優(yōu)化,這將由硬件互連的進(jìn)步、更復(fù)雜的軟件庫(kù)和創(chuàng)新的編程模型推動(dòng)。這些發(fā)展將繼續(xù)推動(dòng)高性能計(jì)算和機(jī)器學(xué)習(xí)的邊界,使更復(fù)雜和要求更高的應(yīng)用能夠在大規(guī)模GPU集群上高效運(yùn)行。
2 c9 n. _! ^5 t8 I X( d! ]* W( t& U0 _6 J+ t2 l
參考文獻(xiàn)/ n' X6 ]% S+ Y
[1] D. Unat et al., "The Landscape of GPU-Centric Communication," ACM Comput. Surv., vol. 37, no. 4, Article 111, Aug. 2024.
q& l; R" j( ?/ C1 g- n
$ S8 e4 m2 F2 x% Z6 @: e& g$ A( w
0 b, f/ L9 a# Q' p: ]' J: R' \- END -
% n8 o8 W: H2 [+ g' k8 {
$ U5 t4 u% N9 v9 m軟件申請(qǐng)我們歡迎化合物/硅基光電子芯片的研究人員和工程師申請(qǐng)?bào)w驗(yàn)免費(fèi)版PIC Studio軟件。無(wú)論是研究還是商業(yè)應(yīng)用,PIC Studio都可提升您的工作效能。$ q7 u: j7 t! s
點(diǎn)擊左下角"閱讀原文"馬上申請(qǐng)4 T a, c: u4 ~1 i9 |8 s
9 {3 i, Z, u$ l' n
歡迎轉(zhuǎn)載
& R" e( Y' K' T* G
4 l" H+ t/ t, n2 d6 Q4 f1 f轉(zhuǎn)載請(qǐng)注明出處,請(qǐng)勿修改內(nèi)容和刪除作者信息!
- _4 y) N& _$ I5 Q/ l: Z
' O) g+ g5 B O1 h2 w. u6 F. u( X4 C
% R; ]1 u; F* E4 G
0au4eoo2ehh64029997521.gif (16.04 KB, 下載次數(shù): 13)
下載附件
保存到相冊(cè)
0au4eoo2ehh64029997521.gif
2024-10-1 01:07 上傳
( y7 Y: ^& T8 W7 h7 w$ O, {
) \; y: g' E2 U6 Z關(guān)注我們# t' z0 n3 e# G l& v; B: I8 G
8 ]* r+ G' R5 B! M' G
- f+ f. ~' e2 p/ ^' [5 w" L
5ej2rrfoyfj64029997621.png (31.33 KB, 下載次數(shù): 13)
下載附件
保存到相冊(cè)
5ej2rrfoyfj64029997621.png
2024-10-1 01:07 上傳
" N2 H3 k- Z* J) C/ X' p" x |
* J- `, W+ l2 c" p8 ? t
m1vkzzacjn164029997721.png (82.79 KB, 下載次數(shù): 13)
下載附件
保存到相冊(cè)
m1vkzzacjn164029997721.png
2024-10-1 01:07 上傳
! }9 ?+ H; l, R/ |# H- o; h
|
) v! S: w# L( s6 t3 a6 |
rx51yznhvkh64029997821.png (21.52 KB, 下載次數(shù): 13)
下載附件
保存到相冊(cè)
rx51yznhvkh64029997821.png
2024-10-1 01:07 上傳
. M+ l5 J% B* e: O8 v9 g |
9 r' b2 t! |0 e' o0 n
* T; ]- B' `2 y- J' p+ C, f5 K) C! Z* R& w( R" H
, V5 l1 k# a8 M
關(guān)于我們:7 `2 |5 ^! u5 }( I: F) _2 O
深圳逍遙科技有限公司(Latitude Design Automation Inc.)是一家專注于半導(dǎo)體芯片設(shè)計(jì)自動(dòng)化(EDA)的高科技軟件公司。我們自主開發(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ù)。" d. x! u* W. F$ y
5 G6 U3 d8 I8 W4 n! l7 V5 m: _; Q
http://www.latitudeda.com/
$ V+ p, z( m9 J) {* r C+ X2 O(點(diǎn)擊上方名片關(guān)注我們,發(fā)現(xiàn)更多精彩內(nèi)容) |
|