自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

大模型分布式并行技術(shù)--數(shù)據(jù)并行優(yōu)化

云計(jì)算 分布式
通信和計(jì)算的重疊通常是將通信和計(jì)算算子調(diào)度到不同的流 (stream) 上實(shí)現(xiàn)的。通信算子調(diào)度到通信流, 計(jì) 算算子調(diào)度到計(jì)算流, 同一個(gè)流上的算子間是順序執(zhí)行的, 不同流上的算子可以并行執(zhí)行, 從而實(shí)現(xiàn)反向中梯 度通信和計(jì)算的并行重疊。

通信融合

從上文知道數(shù)據(jù)并行中需要同步每一個(gè)模型梯度, 這是通過進(jìn)程間的 Allreduce 通信實(shí)現(xiàn)的。如果一個(gè)模型 有非常多的參數(shù),則數(shù)據(jù)并行訓(xùn)練的每一個(gè) step 中會(huì)有非常多次的 Allreduce 通信,下圖為融合梯度同步示例。

融合梯度同步示例融合梯度同步示例

通信的耗時(shí)可以從通信延遲(lantency) 和數(shù)據(jù)傳輸時(shí)間消耗兩方面考慮。單次通信延遲時(shí)間相對(duì)固定, 而 傳輸時(shí)間由通信的數(shù)據(jù)量和帶寬決定。減少總的通信消耗, 可以通過減少通信頻率來實(shí)現(xiàn), 通信融合是一個(gè)可 行的手段,通過將 N 個(gè)梯度的 Allreduce 通信合并成一次 Allreduce 通信,可以減少 N- 1 次通信延遲時(shí)間。

常用的 Allreduce 融合實(shí)現(xiàn)方式是在通信前將多個(gè)梯度 tensors 拼接成一個(gè)內(nèi)存地址連續(xù)的大 tensor,梯度同 步時(shí)僅對(duì)拼接后的大 tensor 做一次 Allreduce 操作。參數(shù)更新時(shí)將大 tensor 切分還原回之前的多個(gè)小 tensors,完 成每個(gè)梯度對(duì)應(yīng)參數(shù)的更新。

通信計(jì)算重疊

除了降低絕對(duì)的通信耗時(shí),還可以從降低整體訓(xùn)練耗時(shí)角度來優(yōu)化,可以考慮通信和計(jì)算的異步流水實(shí)現(xiàn)。 數(shù)據(jù)并行中的梯度同步 Allreduce 通信是在訓(xùn)練的反向過程中進(jìn)行的, 而 Allreduce 后得到的同步梯度是在訓(xùn)練 的更新過程中才被使用, 在反向中并沒有被使用。也就是說上一個(gè)梯度的通信和下一個(gè)梯度的計(jì)算間并沒有依 賴,通信和計(jì)算可以并行,讓兩者的耗時(shí)相互重疊掩蓋,減少反向的耗時(shí),下圖為通信計(jì)算并行相互重疊示例。

通信計(jì)算并行相互重疊示例。通信計(jì)算并行相互重疊示例。

通信和計(jì)算的重疊通常是將通信和計(jì)算算子調(diào)度到不同的流 (stream) 上實(shí)現(xiàn)的。通信算子調(diào)度到通信流, 計(jì) 算算子調(diào)度到計(jì)算流, 同一個(gè)流上的算子間是順序執(zhí)行的, 不同流上的算子可以并行執(zhí)行, 從而實(shí)現(xiàn)反向中梯 度通信和計(jì)算的并行重疊。需要注意的是, 當(dāng)通信和計(jì)算被調(diào)度在不同的流上執(zhí)行時(shí), 需要考慮兩個(gè)流之間依 賴和同步關(guān)系。

  • 某個(gè)梯度 Allreduce 通信進(jìn)行前,該梯度的反向計(jì)算已經(jīng)完成。
  • 某個(gè)梯度對(duì)應(yīng)參數(shù)的更新計(jì)算開始前,該梯度的 Allreduce 通信已經(jīng)完成。

在梯度同步的數(shù)據(jù)并行場(chǎng)景中,開發(fā)者需要需要通過 stream 間的同步功能保證:

以上兩個(gè)方法是數(shù)據(jù)并行中常用的減少通信時(shí)間消耗, 提高并行加速比的優(yōu)化策略。如果能做到通信和計(jì) 算的重疊程度越高,那么數(shù)據(jù)并行的加速比越接近 100% ,多卡并行對(duì)訓(xùn)練吞吐提升的效率也就越高。

責(zé)任編輯:武曉燕 來源: AI大模型咨訊
相關(guān)推薦

2023-10-26 18:10:43

分布式并行技術(shù)系統(tǒng)

2020-07-13 09:40:11

PyTorch框架機(jī)器學(xué)習(xí)

2010-06-03 18:54:57

Hadoop

2021-06-01 05:51:37

云計(jì)算并行計(jì)算分布式計(jì)算

2013-04-27 09:49:14

大數(shù)據(jù)全球技術(shù)峰會(huì)大數(shù)據(jù)大數(shù)據(jù)分布式系統(tǒng)

2023-03-09 11:35:40

2022-12-01 09:34:01

模型論文

2010-06-03 19:28:02

Hadoop

2012-09-12 15:30:19

分布式集群

2019-10-10 09:16:34

Zookeeper架構(gòu)分布式

2024-06-19 07:45:20

2017-06-18 10:45:10

TensorFlow分布式計(jì)算

2011-12-30 15:01:36

淘寶

2023-12-14 14:49:05

SQL數(shù)據(jù)庫分布式 SQL

2010-04-09 14:48:41

Oracle數(shù)據(jù)庫

2023-11-08 10:25:00

模型技術(shù)

2014-06-30 14:20:05

NoSQL數(shù)據(jù)庫

2022-03-10 06:36:59

分布式數(shù)據(jù)庫排序

2009-09-02 18:52:38

Oracle數(shù)據(jù)庫并行
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)