DataFunSummit非數(shù)據(jù)中心GPU上的大模型并行訓(xùn)練_第1頁
DataFunSummit非數(shù)據(jù)中心GPU上的大模型并行訓(xùn)練_第2頁
DataFunSummit非數(shù)據(jù)中心GPU上的大模型并行訓(xùn)練_第3頁
DataFunSummit非數(shù)據(jù)中心GPU上的大模型并行訓(xùn)練_第4頁
DataFunSummit非數(shù)據(jù)中心GPU上的大模型并行訓(xùn)練_第5頁
已閱讀5頁,還剩28頁未讀 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

并行與分布計算全國重點實驗室非數(shù)據(jù)中心GPU上的大模型并行訓(xùn)練并行與分布計算全國重點實驗室01研究背景并行與分布計算全國重點實驗室深度學(xué)習(xí)模型參數(shù)量呈爆炸式增長,對算力系統(tǒng)體系結(jié)構(gòu)、系統(tǒng)軟件提出了新的要求大規(guī)模并行與分布計算仍然是基礎(chǔ)模型訓(xùn)練的主要手段,HPC與AI融合發(fā)展大規(guī)模訓(xùn)練的計算、通信、存儲開銷巨大,對并行模式和并行效率提出更高要求FedusW,ZophB,ShazeerN.Switchtransformers:Scalingtotrillionparametermodelswithsimpleandefficientsparsity[J].TheJournalofMachineLearningResearch,2022,23(1):

5232-5270.并行訓(xùn)練基本方法基礎(chǔ)模型參數(shù)量爆炸性增長一、研究背景:大模型并行訓(xùn)練并行與分布計算全國重點實驗室并行訓(xùn)練基本方法主要分為數(shù)據(jù)并行,

模型并行,

混合并行等基本形式數(shù)據(jù)并行

(data

parallelism,

DP)是將訓(xùn)練數(shù)據(jù)劃分到多個設(shè)備,

多個設(shè)備之間按照一定規(guī)則定期同步模型參數(shù)實現(xiàn)并行訓(xùn)練的一種方式數(shù)據(jù)并行方式下每個設(shè)備計算時都會使用有完整的模型參數(shù)數(shù)據(jù)并行將數(shù)據(jù)切分為多份,不同份的數(shù)據(jù)由不同的設(shè)備進行處理優(yōu)點并行程序邏輯比較容易理解單次迭代中模型訓(xùn)練的數(shù)據(jù)總量增加,使得總的訓(xùn)練時間減少缺點為了保證收斂性,需要頻繁的梯度同步通信一、研究背景:

并行訓(xùn)練基本方法并行與分布計算全國重點實驗室并行訓(xùn)練基本方法主要分為數(shù)據(jù)并行,

模型并行,

混合并行等基本形式模型并行

(model

parallelism,

MP)

訓(xùn)練是指將智能模型劃分到多個計算單元的一種訓(xùn)練方式模型并行方式下每個設(shè)備上只有模型的一部分,張量并行、流水線并行均屬于模型并行模型并行將數(shù)據(jù)切分為多份,每份數(shù)據(jù)需要所有設(shè)備進行處理優(yōu)點降低了模型訓(xùn)練時對單卡的顯存需求缺點較大的通信開銷(常見于張量并行)較低的設(shè)備利用率(常見于流水線并行)一、研究背景:

并行訓(xùn)練基本方法并行與分布計算全國重點實驗室并行訓(xùn)練基本方法主要分為數(shù)據(jù)并行,

模型并行,

混合并行等基本形式張量并行

(tensor

parallelism,

TP)

張量并行是將深度學(xué)習(xí)模型中的參數(shù)切分到不同的設(shè)備上,每個設(shè)備只負責(zé)計算部分參數(shù),從而實現(xiàn)并行計算。模型的參數(shù)分配到不同的設(shè)備上,每個設(shè)備只負責(zé)計算部分參數(shù)。Transformer中將嵌入層和多頭自注意力機制的部分參數(shù)切分到不同的設(shè)備上進行計算。一、研究背景:

并行訓(xùn)練基本方法ShoeybiM,PatwaryM,PuriR,etal.Megatron-lm:Trainingmulti-billionparameterlanguagemodelsusingmodelparallelism[J].arXivpreprintarXiv:1909.08053,

2019.并行與分布計算全國重點實驗室并行訓(xùn)練基本方法主要分為數(shù)據(jù)并行,

模型并行,

混合并行等基本形式流水線并行

(pipeline

parallelism,

PP)

將模型垂直分割成多個部分(稱為“流水級”),每個流水級部署在一個或多個GPU上,數(shù)據(jù)在GPU之間按流水線方式流動。需要對流水線的操作進行調(diào)度,

確保數(shù)據(jù)在各流水級間順暢流動。因為數(shù)據(jù)依賴關(guān)系,

設(shè)備計算會出現(xiàn)空閑(idle),

稱為流水線氣泡(bubble),

影響整體硬件利用效率。一、研究背景:

并行訓(xùn)練基本方法HuangY,ChengY,BapnaA,etal.Gpipe:Efficienttrainingofgiantneuralnetworksusingpipelineparallelism[J].Advancesinneuralinformationprocessingsystems,2019,

32.并行與分布計算全國重點實驗室并行訓(xùn)練基本方法主要分為數(shù)據(jù)并行,

模型并行,

混合并行等基本形式混合并行

(hybird

parallelism)

是指結(jié)合模型結(jié)構(gòu)特點或智能計算系統(tǒng)體系結(jié)構(gòu)特點,

利用多種并行訓(xùn)練方法進行大規(guī)模深度學(xué)習(xí)模型的多維度并行訓(xùn)練混合并行方式下每個設(shè)備上只有模型的一部分混合并行將數(shù)據(jù)切為多份,每份數(shù)據(jù)需要部分或全部設(shè)備進行處理優(yōu)點可以結(jié)合模型并行和數(shù)據(jù)并行的優(yōu)點,實現(xiàn)高效的模型訓(xùn)練應(yīng)對大模型訓(xùn)練的主要方法缺點難以找到性能優(yōu)異的混合并行策略,使得混合并行的優(yōu)勢無法發(fā)揮出來一、研究背景:

并行訓(xùn)練基本方法并行與分布計算全國重點實驗室數(shù)據(jù)中心GPU(A100,H100...)是目前最常見的加速器:從算力性價比(單位價格能獲得的算力)的角度,

數(shù)據(jù)中心GPU有較大的劣勢然而僅從算力性價比的角度衡量并行訓(xùn)練的性價比并不準(zhǔn)確,

例如A100

PCIe和A100

SXM的算力性價比較為接近,

然而通信帶寬差距巨大,

在大模型的并行訓(xùn)練中有較大的性能差距數(shù)據(jù)中心GPU存在有價無市的問題因此,

研究非數(shù)據(jù)中心GPU上的大模型并行訓(xùn)練更具重要意義GPU算力的性價比可以使用Ratio

of

theComputationperformanceandCost(RCC)定義,

單位為TFLOPS/$一、研究背景:

大模型訓(xùn)練加速器價格數(shù)據(jù)來源:

https://vast.ai/pricing并行與分布計算全國重點實驗室02研究進展并行與分布計算全國重點實驗室圍繞非數(shù)據(jù)中心GPU上的大模型并行訓(xùn)練問題,開展關(guān)鍵技術(shù)研究高性價比的大模型訓(xùn)練:大模型并行訓(xùn)練的性價比建模方法高效率的并行訓(xùn)練:通信計算調(diào)度:設(shè)計多維度通信調(diào)度方法,

提高并行訓(xùn)練的通信效率設(shè)計通信計算重疊的聯(lián)合調(diào)度方法,

提高并行訓(xùn)練效率顯存優(yōu)化:設(shè)計流水線并行的異構(gòu)內(nèi)存交換方法,

緩解顯存墻問題高可編程性的并行訓(xùn)練:解耦模型設(shè)計與并行訓(xùn)練,

加強多維并行訓(xùn)練的可編程性二、研究進展小結(jié)并行與分布計算全國重點實驗室GPU算力性價比(TFLOPS/$)對比圖2.1

高性價比的大模型訓(xùn)練大模型并行訓(xùn)練的性價比建模方法

并行訓(xùn)練下,

訓(xùn)練性價比可以使用單位價格能獲得的吞吐量:即單位數(shù)據(jù)量所需的通訊時間加計算時間乘上硬件價格的倒數(shù)計算時間可以簡化為單位數(shù)據(jù)量算力/硬件總算力通信時間需要根據(jù)并行訓(xùn)練方法(DP,PP,TP)進行估算從算力性價比角度4090GPU最高,

然而4090無法使用NVLink進行帶寬提升,

算力性價比次高的3090可以通過相對便宜的NVLink提高帶寬,

據(jù)此搭建了3090NVLink集群3090NVLink并行訓(xùn)練環(huán)境示意圖并行與分布計算全國重點實驗室2.1

高性價比的大模型訓(xùn)練大模型并行訓(xùn)練的性價比建模方法在考慮了NVLink價格的基礎(chǔ)上,

3090NVLink配置相對于全NVLink相連的A100-SXM配置及4090配置在大模型訓(xùn)練中的性價比有明顯優(yōu)勢該集群的建立僅供思路參考,3090仍有著內(nèi)存不足(24G)等問題分析方法可以適用于更多種類硬件,

同期工作也有在3080GPU上進行大模型訓(xùn)練的嘗試3090-NVLink的硬件價格估算方法 并行訓(xùn)練性價比對比LaiZ,LiuY,WangW,etal.RethinkingtheDistributedDNNTrainingClusterDesignfromtheCost-effectivenessView[C]//2023IEEEHPCCTang,Zhenheng,etal."Fusionai:Decentralizedtraininganddeployingllmswithmassiveconsumer-levelgpus."arXivpreprintarXiv:2309.01172(2023).并行與分布計算全國重點實驗室異步流水線并行數(shù)據(jù)并行的混合并行訓(xùn)練中通信操作復(fù)雜通信調(diào)度方法不適用于稀疏通信2.2

高效率的并行訓(xùn)練通信計算調(diào)度:

TriRace--面向混合并行訓(xùn)練的多維度通訊調(diào)度方法非數(shù)據(jù)中心GPU情況下,

通常通信帶寬受限較為明顯通信調(diào)度技術(shù)是常見的降低通信開銷的方法,

然而混合并行訓(xùn)練的通信操作復(fù)雜,

帶來兩個訓(xùn)練效率問題:通信操作多樣,

包括數(shù)據(jù)并行的AllReduce和流水線并行的P2P通信稀疏矩陣的通信開銷大,對通信調(diào)度帶來較大性能挑戰(zhàn)并行與分布計算全國重點實驗室稀疏通信調(diào)度方法P2P通信調(diào)度方法AllReduce通信調(diào)度方法2.2

高效率的并行訓(xùn)練通信計算調(diào)度:

TriRace--面向混合并行訓(xùn)練的多維度通訊調(diào)度方法針對數(shù)據(jù)并行的AllReduce通信,

根據(jù)異步流水線并行的參數(shù)更新方法,

最大化重疊計算操作針對流水線并行的P2P通信,

將雙向通信解耦為兩個單向通信,

盡可能減少關(guān)鍵路徑上的通信數(shù)量使用稀疏通信降低embedding的通信開銷,

并將以embedding各行為單位進行細粒度調(diào)度并行與分布計算全國重點實驗室LiS,LuK,LaiZ,etal.AMultidimensionalCommunicationSchedulingMethodforHybridParallelDNNTraining[J].IEEETransactionsonParallelandDistributedSystems,

2024.2.2

高效率的并行訓(xùn)練通信計算調(diào)度:

TriRace--面向混合并行訓(xùn)練的多維度通訊調(diào)度方法相比Pipedream-2BW、Fold3D等多個訓(xùn)練方法,能夠取得至多1.45倍的訓(xùn)練計算加速并行與分布計算全國重點實驗室通信計算調(diào)度:

Oases--面向張量并行的自動通信計算重疊方法Transformer模型的Hidden

Size高速增長,

張量并行成為大規(guī)模預(yù)訓(xùn)練模型的必需技術(shù); 但是張量并行通信開銷大,

影響訓(xùn)練效率模型名發(fā)布年份模型大小LayersHiddenSizeGPT-3/OPT2020/2022175B9612288MT-NLG2021530B10520480PaLM2022540B11818432BLOOM2022176B7014336LLaMA202365B808192Falcon202340B60819259.2%64.7%張量并行通信在帶寬受限的情況下訓(xùn)練中占比較高Transformer預(yù)訓(xùn)練模型的Hidden

Size較大2.2

高效率的并行訓(xùn)練并行與分布計算全國重點實驗室通信計算調(diào)度:

Oases--面向張量并行的自動通信計算重疊方法當(dāng)前主流的張量并行通信計算重疊方法為將矩陣乘法和其通信分解為多個操作設(shè)計細粒度的通信計算調(diào)度方法,

將數(shù)據(jù)在batch維度切分為互不依賴的兩個子數(shù)據(jù),

他們的通信計算可以互相重疊2.2

高效率的并行訓(xùn)練并行與分布計算全國重點實驗室通信計算調(diào)度:

Oases--面向張量并行的自動通信計算重疊方法在顯存受限的場景下,

使用重計算計算技術(shù)非常必要設(shè)計去除通信冗余的重計算調(diào)度方法,

應(yīng)用重計算時,

將通信結(jié)果作為重計算子圖的輸出可以在反向過程中減少通信開銷2.2

高效率的并行訓(xùn)練重計算結(jié)束的位置為通信后時,

可以省去該通信并行與分布計算全國重點實驗室通信計算調(diào)度:

Oases--面向張量并行的自動通信計算重疊方法Oases可以顯著加速張量并行訓(xùn)練,

相較Megatron-LM,

Alpa,矩陣乘法內(nèi)重疊(Wang)等方法,

可以取得至多1.95倍加速2.2

高效率的并行訓(xùn)練LiS,LaiZ,HaoY,etal.AutomatedTensorModelParallelismwithOverlappedCommunicationforEfficientFoundationModelTraining[J].arXivpreprintarXiv:2305.16121,

2023.GB///T71LiiiS,,,L7 aiiiZ,,,4 HaoY,,,etttalll...AutttomatttedTensorrrModelllParrrallllllellliiismw

iiittthOverrrlllappedCommun

iiicatttiiionffforrrEffffffiiiciiientttFoundatttiiionModelllTrrraiiiniiing[[[J]]]...arrrXiiivprrreprrriiintttarrrXiiiv:::2305...16121,,,2023...并行與分布計算全國重點實驗室顯存優(yōu)化:

Mbapp--面向商品級GPU的流水線并行異構(gòu)內(nèi)存交換方法流水線并行通信量降低,

適用于在商品級GPU上訓(xùn)練大模型商品級GPU如3090的顯存容量較小,

大模型的訓(xùn)練要求顯存優(yōu)化技術(shù)(e.g.,

顯存交換,

swap)流水線并行的算法特點,

導(dǎo)致流水級(設(shè)備)之間的顯存分布不均衡流水線并行適合通信資源貧乏的商品級深度學(xué)習(xí)服務(wù)器流水線并行的顯存消耗不均衡2.2

高效率的并行訓(xùn)練并行與分布計算全國重點實驗室顯存優(yōu)化:

Mbapp--面向商品級GPU的流水線并行異構(gòu)內(nèi)存交換方法GPU-GPU

swap方法:

將內(nèi)存負載較重GPU的數(shù)據(jù)緩存到內(nèi)存負載較輕GPU的空閑內(nèi)存中,減少GPU-CPU交換操作,

提高GPU內(nèi)存利用率混合GPU-CPU

swap方法:

對于內(nèi)存負載較重的GPU,將張量分塊,部分數(shù)據(jù)塊從本GPU卸載到CPU內(nèi)存中,其余數(shù)據(jù)塊經(jīng)相鄰GPU再卸載到CPU內(nèi)存中,

傳輸操作流水化,減少傳輸開銷NVLinkQPINVLink混合GPU-CPU交換PCIePCIeGPUGPU工作窗口P2P交換緩存窗口Mbapp工作流程2.2

高效率的并行訓(xùn)練并行與分布計算全國重點實驗室顯存優(yōu)化:

Mbapp--面向商品級GPU的流水線并行異構(gòu)內(nèi)存交換方法相較于內(nèi)存交換方法torch-offload,訓(xùn)練吞吐量可以提高3.04倍至4.59倍相較于流水線并行訓(xùn)練方法,Mbapp能夠在部分流水級顯存開銷超出GPU容量時支持模型訓(xùn)練Mbapp可以使各流水級(工作設(shè)備)的顯存消耗更加均衡2.2

高效率的并行訓(xùn)練并行與分布計算全國重點實驗室Merak--實現(xiàn)模型設(shè)計與并行訓(xùn)練的解耦現(xiàn)有并行框架超大規(guī)模模型設(shè)計與并行訓(xùn)練綁定,大規(guī)模并行計算可編程性差語言模型開源社區(qū)活躍,

多樣的模型定義方式給并行訓(xùn)練應(yīng)用帶來較大挑戰(zhàn)框架名稱開源數(shù)據(jù)并行流水并行張量并行微軟DeepSpeed是是否否英偉達Megatron-LM是是否否微軟Varuna是是是否亞馬遜SageMaker否是是否Merak是是是是并行訓(xùn)練框架中自動應(yīng)用并行訓(xùn)練技術(shù)的情況2.3

高可編程性的并行訓(xùn)練并行與分布計算全國重點實驗室Merak--實現(xiàn)模型設(shè)計與并行訓(xùn)練的解耦2.3

高可編程性的并行訓(xùn)練單機腳本的計算圖定義方式繁多,

分布式技術(shù)應(yīng)用困難提出基于符號算子定義計算圖:符號算子不進行參數(shù)初始化,

可以使用torch.fx,

快速獲得完整模型計算圖提出一個計算圖劃分算法,

將模型計算圖編譯成數(shù)個可以序列運行的子圖:分析圖節(jié)點的依賴關(guān)系,

找到通信量較小的邊作為子圖劃分的邊界考慮模型訓(xùn)練中常量可以在子圖間傳遞,子圖劃分更加準(zhǔn)確子圖分配至工作設(shè)備后,

進行參數(shù)初始化,進行成為分布式計算圖(3D并行模組)AutomaticModel

PartitionerDP③3DParallel

ModuleTMPPMPTMPPMP①Tracing

withproxied

graph②Sharded

subgraphsequence模型劃分編譯的工作流程并行與分布計算全國重點實驗室Merak--實現(xiàn)模型設(shè)計與并行訓(xùn)練的解耦A(yù)PI接口簡明易用,

在單機訓(xùn)練腳本的基礎(chǔ)上,

僅需增加幾行代碼即可實現(xiàn)數(shù)據(jù)-流水線-張量并行混合的3D并行訓(xùn)練2.3

高可編程性的并行訓(xùn)練/HPDL-Group/MerakLaiZ,LiS,TangX,etal.Merak:Anefficientdistributeddnntrainingframeworkwithautomated3dparallelismforgiantfoundationmodels[J].IEEETransactionsonParallelandDistributedSystems,2023,34(5):

1466-1478.并行與分布計算全國重點實驗室03總結(jié)與展望并行與分布計算全國重點實驗室圍繞非數(shù)據(jù)中心GPU上的大模型并行訓(xùn)練問題,可以總結(jié)為提高大模型的accessbility,讓更多研究者更便宜更快更方便地進行大模型訓(xùn)練高性價比的大模型訓(xùn)練高效率的并行訓(xùn)練高可編程性的并行訓(xùn)練三、研究總結(jié)Affordable,

更多人能訓(xùn)Efficient,

訓(xùn)的更快User-friendly,

用起來更方便并行與分布計算全國重點實驗室大模型的持續(xù)迭代對大規(guī)模異構(gòu)并行計算效率提出更高要求針對更多應(yīng)用特點的大規(guī)模分布式訓(xùn)練技術(shù)如何整合及通用化深度學(xué)習(xí)編譯器是提高并行訓(xùn)練可編程性的重要技術(shù)方向通信帶寬進步落后于需求,

通信優(yōu)化是提高并行訓(xùn)練效率的重要方向大規(guī)模分布式訓(xùn)練技術(shù)需要更大規(guī)模更真實場景的測試與驗證三、研究展望并行與分布計算全國重點實驗室謝 謝敬請批評指正!博士研究生

李笙維

國防科技大學(xué)計算機學(xué)

swli@DataFunSummit#

2024.cnPS:實驗室長期招收有志于MLSys相關(guān)的碩士博士研究生~更多研究詳見導(dǎo)師主頁:/pid/143/4279.html并行與分布計算全國重點實驗室設(shè)想:

并行訓(xùn)練框架自頂向下可分為6層ComputationoperatorDevice-specific

operatorComputation

scheduleDistributedruntime

engineCommunication

schedule Memory

managementPyTorch TensorFlow...tf.graph......Train

simulator...Device

assignAPIJAXPaddlePaddleAccessmodelIRtorch.fx jax_to_hlo

...AccesstrainresourceGPU

NPU

FPGATrainingresource

abstractionCommunicationlibraryMPI

gRPC

NCCLIntermediaterepresentationIR

convert IR

structured Device

topo ProfilingParallelstrategygenerationCost

model IR

compiler訓(xùn)練框架API層任務(wù)資源獲取層任務(wù)資源抽象層并行策略制訂層分布式計算引擎層計算通信實現(xiàn)層大規(guī)模并行訓(xùn)練框架設(shè)想并行與分布計算全國重點實驗室Merak并行訓(xùn)練框架目前基于PyTorch框架設(shè)計,

帶來了并行策略制訂困難的問題,

所以使用M

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論