|
引言
- b, w1 A S5 M/ T" X1 j8 p d' ~* |高性能計算(HPC)和機器學習(ML)領域已經因GPU的廣泛應用而發(fā)生了變革。截至2024年6月,世界排名前10的超級計算機中有9個依賴GPU集群進行加速。GPU在計算方面表現(xiàn)出色,但GPU之間的通信可能成為重大瓶頸,特別是當每個節(jié)點和集群中的GPU數(shù)量增加時。
1 ~0 L8 f6 O# @ J; \# S9 W# H
. b) A* R7 c* t, m y傳統(tǒng)上,多GPU通信由CPU管理。然而,近期以GPU為中心的通信進展正在挑戰(zhàn)這一范式,減少CPU參與,賦予GPU更多通信任務自主權,并解決多GPU通信與計算之間的不匹配問題[1]。0 S+ ]- T. Q3 y" q" y/ o4 r
' T3 l; R/ t- a# k% x& L
dln2bfcsmn164029997221.png (97.26 KB, 下載次數(shù): 11)
下載附件
保存到相冊
dln2bfcsmn164029997221.png
2024-10-1 01:07 上傳
* R/ y+ s, t. r" S l5 e4 q& b) B圖1:展示了不同類型的節(jié)點內通信方法的數(shù)據(jù)路徑和API調用。" m9 o2 i8 r. P; |
5 a- _+ Q1 a+ b; C1 T6 q* _; X! F理解GPU中心通信, o6 F6 A- K* X8 a1 @% C7 x. x
GPU中心通信可以廣泛定義為減少CPU在多GPU執(zhí)行關鍵路徑中參與的機制。這包括供應商層面的改進(賦予GPU通信自主權)和利用這些改進的用戶層面實現(xiàn)。
- g1 a6 k' d( p9 e m, T' C4 i' T# s
GPU中心通信主要分為兩類:
* X6 d( @, |) h) y% I% R" q% Q7 s節(jié)點內通信:在單個節(jié)點內進行通信,該節(jié)點包含多個連接到共享內存主機的GPU卡。節(jié)點間通信:跨多個節(jié)點進行通信,每個GPU由不同的進程控制,不同節(jié)點上的進程之間不共享內存。
$ }6 k7 N( g) I9 {9 C7 \; z. E( Q+ W6 u; @; h) r/ ~7 \: }# c0 |
支持GPU中心通信的關鍵技術4 i9 p4 Q- B7 B5 R( m. G
幾項技術為高效的GPU中心通信奠定了基礎:
$ r* z H$ n( P% H. K# A0 k8 [9 v, i( | i
1. 統(tǒng)一虛擬尋址(UVA):在CUDA 4.0中引入,UVA允許節(jié)點內的所有GPU和CPU共享同一統(tǒng)一虛擬地址空間,簡化了內存管理。9 f* D+ j8 Q e' `, P5 q
4 n: p% Y$ |: E" \2. GPUDirect:一系列優(yōu)化GPU與其他器件之間數(shù)據(jù)傳輸?shù)募夹g:
4 a% O" X! ^" F. q% p: LGPUDirect RDMA:支持NVIDIA GPU跨節(jié)點直接通信,無需CPU參與。GPUDirect P2P:允許同一PCIe根復合體上的GPU之間直接內存訪問。; |+ H0 U! p% V0 A- z
4 m. v) _9 }; V+ z) m3. NVLink:高帶寬、低延遲的GPU到GPU互連,顯著提高了GPU之間的數(shù)據(jù)傳輸速率。
: S a& n2 B1 p9 T1 k- s/ B( F
! U2 G* j4 Q8 q0 K/ ^
wlnjf4vbo4i64029997321.png (147.58 KB, 下載次數(shù): 12)
下載附件
保存到相冊
wlnjf4vbo4i64029997321.png
2024-10-1 01:07 上傳
8 U! ]) |" c- R- F' w+ Z0 c' L圖2:呈現(xiàn)了NVIDIA支持GPU中心通信和網絡的技術時間線。$ v* k! _7 m8 f) j" b3 D L) |4 h0 `
6 z6 q8 D, z5 M/ _4. CUDA IPC:允許同一節(jié)點上的進程訪問其他進程的器件緩沖區(qū),無需額外復制。
+ X4 K4 E Y2 V r/ z
8 u3 H* \6 M4 a5. 統(tǒng)一內存(UVM):創(chuàng)建一個節(jié)點內所有處理器可訪問的單一地址空間,自動管理CPU和GPU內存之間的數(shù)據(jù)移動。
3 G6 A# Y0 h# {! j" p1 V+ j0 M9 R5 O; r. G
9 F1 \. s; Q9 x
GPU中心通信庫: N% g- X, j, ]1 v
幾個庫已經開發(fā)出來利用這些技術并提供高效GPU為中心的通信:! T# t( s& F: `" ?+ P3 q
GPU感知MPI:可以區(qū)分主機和器件緩沖區(qū)的MPI實現(xiàn),允許GPU之間直接通信,無需通過主機內存中轉。NCCL (NVIDIA集體通信庫):提供針對深度學習工作負載優(yōu)化的拓撲感知集體原語,用于GPU間通信。NVSHMEM:NVIDIA對CUDA器件OpenSHMEM規(guī)范的實現(xiàn),為進程提供高效的單邊put/get API以訪問遠程數(shù)據(jù)對象。ROC_SHMEM:AMD對NVSHMEM的對應實現(xiàn),為AMD GPU提供類似功能。 Q- ~5 c' W7 v* Q% F( a" h0 Z+ h
[/ol]
/ }* B+ H P- @% M7 R0 k+ \# W; ]
5 c! N v- \8 b3 n
qgpmxzuax3564029997421.png (123.58 KB, 下載次數(shù): 13)
下載附件
保存到相冊
qgpmxzuax3564029997421.png
2024-10-1 01:07 上傳
$ R# `. x2 H) C3 F圖3:展示了各種以GPU為中心的通信方法的節(jié)點間通信數(shù)據(jù)和控制路徑。
$ [( i6 U" s2 m# \' P/ O
?4 M- [6 r. f! G4 Z: [; C3 _* P5 L4 ~9 O. \$ r
挑戰(zhàn)和未來方向
* D/ t$ ~2 j. ?( b$ E. A以GPU為中心的通信提供了顯著優(yōu)勢,但仍存在幾個挑戰(zhàn)和未來研究方向:! |; J6 j- r) c
語義不匹配:MPI和GPU編程模型之間存在根本的語義不匹配,因為MPI不了解GPU流。這可能導致強制同步和內核啟動流水線受損。資源爭用:當通信和計算都由GPU線程執(zhí)行時,它們會爭用相同的有限資源,可能導致性能問題。內存一致性:確保內核運行時GPU和NIC內存之間的一致性可能具有挑戰(zhàn)性,特別是對于持久內核。集體算法設計:多GPU系統(tǒng)復雜且非傳統(tǒng)的拓撲結構,以及GPU對之間不均勻的帶寬,使設計高效的集體通信算法變得復雜。1 P2 _3 e) i) i; e- |; z% M
[/ol]
2 ~) O5 O5 o+ D( z未來研究方向包括:" j3 {) s' V D. C0 o
無CPU網絡:將整個網絡棧移至GPU,實現(xiàn)完全自主的多GPU執(zhí)行。更廣泛的GPU自主性:使GPU能夠處理傳統(tǒng)上由CPU管理的任務,如文件系統(tǒng)訪問和系統(tǒng)調用。改進調試和分析工具:開發(fā)能夠監(jiān)控和可視化GPU中心通信的工具,包括器件原生傳輸和多GPU環(huán)境中的競爭檢測。
: A- f# B# X$ n8 P: ^( P: f[/ol]- P) Z( E5 s0 J, [) k; c. ~
結論
) n5 J/ A3 D8 w6 ^6 M以GPU為中心的通信代表了多GPU執(zhí)行范式的重大轉變,提供了提高性能、降低延遲和增強可擴展性的潛力。隨著GPU繼續(xù)主導HPC和ML領域,理解和利用這些通信技術對于開發(fā)人員、研究人員和系統(tǒng)設計師來說將變得越來越重要,以便從多GPU系統(tǒng)中獲得最大性能。( G& s4 Q) q! \( G* O
( F4 S7 v2 j3 [0 Q# A以GPU為中心的通信領域正在迅速發(fā)展,新的硬件特性、軟件庫和編程模型不斷涌現(xiàn)。了解這些發(fā)展及其影響對于任何使用大規(guī)模GPU加速系統(tǒng)的人來說都是必要的。4 K* a+ H7 D9 j
# \+ L9 h% F2 P5 U
展望未來,可以期待GPU中心通信的進一步優(yōu)化,這將由硬件互連的進步、更復雜的軟件庫和創(chuàng)新的編程模型推動。這些發(fā)展將繼續(xù)推動高性能計算和機器學習的邊界,使更復雜和要求更高的應用能夠在大規(guī)模GPU集群上高效運行。6 L, w! k ?5 P
% c7 M* a9 J2 O* |8 e; f" {* @: p C參考文獻
" C0 z) b/ r6 G9 I8 K* {/ [/ h[1] D. Unat et al., "The Landscape of GPU-Centric Communication," ACM Comput. Surv., vol. 37, no. 4, Article 111, Aug. 2024.
( ~5 V# A3 \) N$ C, m# U+ z( d3 s ^7 k! c
4 F9 i7 V( m. W3 i+ n- END -
9 q K- }4 N$ ~% I
6 a, ]. O8 ]% ~0 l; i軟件申請我們歡迎化合物/硅基光電子芯片的研究人員和工程師申請體驗免費版PIC Studio軟件。無論是研究還是商業(yè)應用,PIC Studio都可提升您的工作效能。
! G: j2 j. [( |2 u/ s點擊左下角"閱讀原文"馬上申請0 \& [4 r3 S- o+ r& [
4 k& L5 {8 V7 f7 c歡迎轉載, P, S3 n( O, C& t1 U
8 `% v, l {" x1 v0 n轉載請注明出處,請勿修改內容和刪除作者信息!
% c7 H- b! E/ ]6 _8 U3 l9 {8 G, T, \7 n( q
# o. E" d2 d" f$ @" [
9 X; H9 P$ \, l+ U' q: L$ n
0au4eoo2ehh64029997521.gif (16.04 KB, 下載次數(shù): 11)
下載附件
保存到相冊
0au4eoo2ehh64029997521.gif
2024-10-1 01:07 上傳
) j$ x* R' ]- C( R0 s; q# l! Z
6 @# Y' C0 z$ E; b關注我們7 e( n- H& @' ]& i
8 }% U. M' r: v1 Q x. h# _ c8 E
+ M9 N4 `" _* S! V8 a$ Y
5ej2rrfoyfj64029997621.png (31.33 KB, 下載次數(shù): 11)
下載附件
保存到相冊
5ej2rrfoyfj64029997621.png
2024-10-1 01:07 上傳
Y( S# w3 q' _$ Y& H1 b0 h+ t |
8 Q, K) O% M: q- G
m1vkzzacjn164029997721.png (82.79 KB, 下載次數(shù): 10)
下載附件
保存到相冊
m1vkzzacjn164029997721.png
2024-10-1 01:07 上傳
% r, A2 t$ b* p# R0 m* p& Z. n | + r# j, J6 |5 G7 [3 ]8 D. P9 m
rx51yznhvkh64029997821.png (21.52 KB, 下載次數(shù): 11)
下載附件
保存到相冊
rx51yznhvkh64029997821.png
2024-10-1 01:07 上傳
1 N9 N2 ~7 ~0 a! E4 ^; O1 w
| - z6 {( b$ k/ |1 Y1 H
' H( Z1 L! u5 O+ F P
' }# c6 c$ J5 |2 n ?" w c5 x* w, G/ L4 j
關于我們:# z9 z2 Z# i8 Z
深圳逍遙科技有限公司(Latitude Design Automation Inc.)是一家專注于半導體芯片設計自動化(EDA)的高科技軟件公司。我們自主開發(fā)特色工藝芯片設計和仿真軟件,提供成熟的設計解決方案如PIC Studio、MEMS Studio和Meta Studio,分別針對光電芯片、微機電系統(tǒng)、超透鏡的設計與仿真。我們提供特色工藝的半導體芯片集成電路版圖、IP和PDK工程服務,廣泛服務于光通訊、光計算、光量子通信和微納光子器件領域的頭部客戶。逍遙科技與國內外晶圓代工廠及硅光/MEMS中試線合作,推動特色工藝半導體產業(yè)鏈發(fā)展,致力于為客戶提供前沿技術與服務。6 q: b) S8 U+ r
9 i. [% \9 |7 U" K# vhttp://www.latitudeda.com/# W; F& ~9 z3 ~' `, D, |& V2 {7 M
(點擊上方名片關注我們,發(fā)現(xiàn)更多精彩內容) |
|