国产av一二三区|日本不卡动作网站|黄色天天久久影片|99草成人免费在线视频|AV三级片成人电影在线|成年人aV不卡免费播放|日韩无码成人一级片视频|人人看人人玩开心色AV|人妻系列在线观看|亚洲av无码一区二区三区在线播放

網(wǎng)易首頁 > 網(wǎng)易號 > 正文 申請入駐

到底什么是All-Reduce、All-to-All?

0
分享至

我們在看AIGC大模型、算力集群相關(guān)文獻(xiàn)的時候,經(jīng)常會看到“ All-Reduce ”、“ All-to-All ”這樣的詞組。

大家知道它們是什么意思嗎?


故事還是要從英偉達(dá)說起。

2014年,為了取代傳統(tǒng)的PCIe協(xié)議,英偉達(dá)推出了全新的NVLINK技術(shù),用于GPU和GPU之間的點對點高速互聯(lián)。

后來,NVLINK技術(shù)不斷迭代。 2018年,為了實現(xiàn)8顆GPU之間的互連,英偉達(dá)又發(fā)布了NVSwitch 1.0。

在搗鼓GPU互連技術(shù)的過程中,英偉達(dá)還發(fā)明了一個名叫 NCCL(NVIDIA Collective Communications Library)的集合通信庫。

NCCL支持多種編程語言和網(wǎng)絡(luò),在算法層面提供了豐富的外部API,可以大幅提升通信網(wǎng)絡(luò)性能,也可以讓GPU之間的通信設(shè)計變得更簡單。

在NCCL中,定義了兩種通信模式:

1、點對點通信(Point to point communication,P2P)

2、集合通信(Collective communication,CC)

點對點大家一看就懂,就是兩個點之間進(jìn)行通信。一個是Sender,一個是Receiver。

什么是集合通信呢?是指一組(多個)節(jié)點內(nèi)進(jìn)行通信。在我們傳統(tǒng)通信里,就是點到多點,多點到多點,涉及到組網(wǎng)(網(wǎng)狀、星狀、環(huán)狀、mesh等)那種。

NCCL還定義了一些計算節(jié)點之間數(shù)據(jù)交換的基本操作模式,并將其命名為——“通信原語(也有寫作通信元語。

這些通信原語包括:Broadcast、Scatter、Gather、All-Gather、Reduce、All-Reduce、Reduce-Scatter、All-to-All等。

沒錯,All-Reduce和All-to-All,就是其中之二。

這些通信原語是構(gòu)建復(fù)雜通信行為的“原子操作”。現(xiàn)在所有復(fù)雜的AI算力集群,內(nèi)部通信都是基于這些通信原語。它們極大地提升了并行計算的效率和便利性。

接下來,我們就逐個解釋一下,這些通信原語的意思。

Broadcast(1對多的廣播

這個最簡單。當(dāng)主節(jié)點執(zhí)行Broadcast操作時,數(shù)據(jù)會從主節(jié)點發(fā)送至其他所有節(jié)點。


Broadcast是一個典型的分發(fā)、散播行為。在分布式機(jī)器學(xué)習(xí)中,Broadcast常用于網(wǎng)絡(luò)參數(shù)的初始化。

Scatter(1對多的發(fā)散)

Scatter也是一種分發(fā)、散播行為。它也是 將主節(jié)點的數(shù)據(jù)發(fā)送至其他所有節(jié)點。只不過, Broadcast發(fā)送的是完整數(shù)據(jù),而 Scatter是將數(shù)據(jù)進(jìn)行切割后,再分發(fā),就像分生日蛋糕。


Gather(多對1的收集)

Gather,是將多個sender(發(fā)送節(jié)點)上的數(shù)據(jù)收集到單個節(jié)點上,可以理解為反向的Scatter。


All-Gather(多對多的收集)

Gather是多個到一個,All-Gather是多個到多個。

All-Gather是將多個sender(發(fā)送節(jié)點)上的數(shù)據(jù)收集到多個節(jié)點上。它相當(dāng)于多個Gather操作。或者說,是一個Gather操作之后,跟著一個Broadcast操作。


Reduce(多對1的規(guī)約)

Reduce的英文意思是“減少、降低”。在集合通信里,它表示“規(guī)約”運算,是一系列簡單運算操作(包括:SUM、MIN、MAX、PROD、LOR等)的統(tǒng)稱。

經(jīng)常用Excel表格的童鞋,對這些簡單運算應(yīng)該不陌生。例如SUM,就是求和。MIN,就是找出最小值。

其實說白了,Reduce就是:輸入多個數(shù),執(zhí)行操作后,得到更少的數(shù)(例如1個數(shù))。

下面這個,就是以ReduceSum(求和規(guī)約)為例:


All-Reduce(多對多的規(guī)約)

All-Reduce,這個是我們在文章開頭提到的,AI領(lǐng)域非常常見的一個詞組。

在大模型訓(xùn)練中,經(jīng)常會用到數(shù)據(jù)并行(DP)這個并行方式。里面就有AIl Reduce這個關(guān)鍵操作。

我們以All Reduce Sum(求和)為例:

首先,對所有節(jié)點進(jìn)行數(shù)據(jù)收集。然后,對數(shù)據(jù)進(jìn)行求和。再然后,把結(jié)果重新發(fā)回給所有節(jié)點。


在大模型訓(xùn)練中,Server GPU節(jié)點收集的數(shù)據(jù),就是各個Worker GPU節(jié)點計算得出的“梯度”。求和之后再發(fā)回的過程,是“更新梯度”??床欢疀]關(guān)系,以后小棗君會再介紹。

Reduce-Scatter(組合的規(guī)約與發(fā)散)

Reduce-Scatter稍微有點復(fù)雜、燒腦。

它是先歸約(Reduce),再分散(Scatter)。具體來說:

首先,在所有參與計算的GPU節(jié)點上,對位于相同位置或索引的數(shù)據(jù)塊執(zhí)行指定的規(guī)約運算(例如求和SUM)。

接著,將規(guī)約后的完整結(jié)果按維度切分,并將不同的數(shù)據(jù)塊分發(fā)給各個節(jié)點。最終,每個節(jié)點只得到整個規(guī)約結(jié)果的一部分,而不是全部。


簡單來說,它先對所有數(shù)據(jù)進(jìn)行“匯總計算”,然后再將計算好的結(jié)果“分散下發(fā)”。

All-to-All(多對多的全互連)

AIl-to-AII也是AI領(lǐng)域出現(xiàn)頻率很高的一個詞組。它是全交換操作,可以讓每個節(jié)點都獲取其他節(jié)點的值。

在使用All-to-All時,每一個節(jié)點都會向任意一個節(jié)點發(fā)送消息,每一個節(jié)點也都會接收到任意一個節(jié)點的消息。每個節(jié)點的接收緩沖區(qū)和發(fā)送緩沖區(qū)都是一個分為若干個數(shù)據(jù)塊的數(shù)組。


All-to-All的具體操作是:將節(jié)點i的發(fā)送緩沖區(qū)中的第j塊數(shù)據(jù)發(fā)送給節(jié)點j。節(jié)點j將接收到的來自節(jié)點i的數(shù)據(jù)塊,放在自身接收緩沖區(qū)的第i塊位置。

All-to-All與All-Gather相比較,區(qū)別在于:All-Gather操作中,不同節(jié)點向某一節(jié)點收集到的數(shù)據(jù)是完全相同的。而在All-to-All中,不同的節(jié)點向某一節(jié)點收集到的數(shù)據(jù)是不同的。在每個節(jié)點的發(fā)送緩沖區(qū)中,為每個節(jié)點都單獨準(zhǔn)備了一塊數(shù)據(jù)。

上面這個圖,大家如果學(xué)過工程數(shù)學(xué)的話,就會發(fā)現(xiàn),它就是一個矩陣倒置?;蛘哒f,是Excel里的行列倒轉(zhuǎn)。

All-to-All的核心目標(biāo)是重分布。它不進(jìn)行聚合運算,而是專注于在不同節(jié)點間重新分布數(shù)據(jù)塊。

以后小棗君會給大家介紹, All-to-All 操作在大模型訓(xùn)練中的混合并行策略里至關(guān)重要。例如, 當(dāng)需要從數(shù)據(jù)并行組切換到模型并行組時,All-to-All可以高效地重組數(shù)據(jù)。

Ring-base collective(基于環(huán)的集合)

最后還要提一個有趣的結(jié)構(gòu)——環(huán)(Ring)。

Ring-base collective是將所有的通信節(jié)點通過首位相連形成一個單向環(huán),數(shù)據(jù)在環(huán)上依次傳輸。

傳輸方式有兩種,一種是一次性傳輸全部,還有一種,是對數(shù)據(jù)進(jìn)行切割,然后分別發(fā)送。


All-Reduce里有一種Ring All-Reduce(環(huán)形全規(guī)約)算法。它是通過組合Reduce-Scatter和All-Gather兩個操作來實現(xiàn)的。

Ring All-Reduce算法分為兩個階段:

第一階段,將N個worker分布在一個環(huán)上,并且把每個worker的數(shù)據(jù)分成N份。


對于第k個worker,這個worker會把第k份數(shù)據(jù)發(fā)給下一個worker,同時從前一個worker收到第k-1份數(shù)據(jù)。


然后,第k個worker會把收到的第k-1份數(shù)據(jù)和自己的第k-1份數(shù)據(jù)整合,再將整合的數(shù)據(jù)發(fā)送給下一個worker。


以此循環(huán)N次之后,每一個worker都會包含最終整合結(jié)果的一份。


第二階段,每個worker將整合好的部分發(fā)送給下一個worker。worker在收到數(shù)據(jù)之后,更新自身數(shù)據(jù)對應(yīng)的部分即可。

很顯然,這種環(huán)形算法可以解決傳統(tǒng)All-Reduce中Server節(jié)點的能力瓶頸問題。

最后的話

好啦,以上就是常見通信原語的具體工作原理。

AI大模型訓(xùn)練推理任務(wù),是由海量的GPU共同完成的。而這些GPU之間的通信,就是基于上面這些通信原語模型。


下一期,小棗君會詳細(xì)介紹一下大模型訓(xùn)推任務(wù)中的并行計算方式,以及這些通信原語究竟是如何運用于不同的并行計算方式中。

敬請關(guān)注!

特別聲明:以上內(nèi)容(如有圖片或視頻亦包括在內(nèi))為自媒體平臺“網(wǎng)易號”用戶上傳并發(fā)布,本平臺僅提供信息存儲服務(wù)。

Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.

相關(guān)推薦
熱點推薦
破案了!孫穎莎玩套路?被裁判警告 原來是蒯曼先去換球衣 太打臉了

破案了!孫穎莎玩套路?被裁判警告 原來是蒯曼先去換球衣 太打臉了

林子說事
2026-04-03 10:16:56
李亞鵬回應(yīng)張雪擬拍賣賽車復(fù)刻版給嫣然醫(yī)院捐款:想給他贈茶

李亞鵬回應(yīng)張雪擬拍賣賽車復(fù)刻版給嫣然醫(yī)院捐款:想給他贈茶

南方都市報
2026-04-03 17:17:14
露襪跟的制服是誘惑嗎

露襪跟的制服是誘惑嗎

艾斯萊斯奈斯
2026-04-02 11:38:25
一個是司令一個是副司令,后來司令被評為上將,副司令卻成了大將

一個是司令一個是副司令,后來司令被評為上將,副司令卻成了大將

史之銘
2026-04-02 17:18:28
歷史老師跌入“無人區(qū)”:某高中20人教研組,近一半無學(xué)生可教

歷史老師跌入“無人區(qū)”:某高中20人教研組,近一半無學(xué)生可教

聽心堂
2026-03-31 15:52:04
局勢再度升級!首艘開往中國的油輪遭到襲擊,是誤傷還是警告

局勢再度升級!首艘開往中國的油輪遭到襲擊,是誤傷還是警告

諦聽骨語本尊
2026-04-03 19:31:58
網(wǎng)傳百億私募一季度跌幅榜曝光!

網(wǎng)傳百億私募一季度跌幅榜曝光!

大財可富司機(jī)
2026-04-03 12:58:29
1979年對越反擊戰(zhàn)張萬年嚴(yán)令士兵:戰(zhàn)場遇三類人員可當(dāng)場直接擊斃

1979年對越反擊戰(zhàn)張萬年嚴(yán)令士兵:戰(zhàn)場遇三類人員可當(dāng)場直接擊斃

嘮叨說歷史
2026-03-31 17:14:09
1977年,謝靜宜被開除黨籍后說:不管黨認(rèn)不認(rèn),我永遠(yuǎn)是黨的女兒

1977年,謝靜宜被開除黨籍后說:不管黨認(rèn)不認(rèn),我永遠(yuǎn)是黨的女兒

微史紀(jì)
2026-03-31 12:36:37
廣東女車主眼睜睜看著搖中的“3333”號牌逾期作廢 原因是買的吉利星愿公告過期無法上牌

廣東女車主眼睜睜看著搖中的“3333”號牌逾期作廢 原因是買的吉利星愿公告過期無法上牌

信網(wǎng)
2026-04-03 14:01:04
中東正打得不可開交,中國在西北邊陲干了一件大事

中東正打得不可開交,中國在西北邊陲干了一件大事

兵國大事
2026-04-02 17:03:42
27歲單親媽媽開直播,播著播著睡著了,醒來一看后臺直接傻眼了

27歲單親媽媽開直播,播著播著睡著了,醒來一看后臺直接傻眼了

小椰的奶奶
2026-04-01 17:04:55
76歲達(dá)爾骨折堅持訪華抵京,與中國商議重要事宜

76歲達(dá)爾骨折堅持訪華抵京,與中國商議重要事宜

至死不渝的愛情
2026-04-03 17:32:45
1964年毛主席得知楊育才僅是副連長,憤怒詢問為何11年只升一級?

1964年毛主席得知楊育才僅是副連長,憤怒詢問為何11年只升一級?

我不是沃神
2026-04-02 15:05:03
危險:伊朗的“一帶一路”大橋被炸,美陸軍又要上演血洗中東?

危險:伊朗的“一帶一路”大橋被炸,美陸軍又要上演血洗中東?

Ck的蜜糖
2026-04-03 19:29:55
央視直播乒乓球時間表:CCTV5直播,王楚欽PK小勒布倫沖擊前八

央視直播乒乓球時間表:CCTV5直播,王楚欽PK小勒布倫沖擊前八

薇說體育
2026-04-03 11:43:24
鄭麗文詳細(xì)行程公布!首日夜宿南京,又解決藍(lán)營隱患 徐巧芯高興了

鄭麗文詳細(xì)行程公布!首日夜宿南京,又解決藍(lán)營隱患 徐巧芯高興了

混沌錄
2026-04-02 20:21:18
毛主席鋼筆字的驚艷之作,書法界大揭秘!

毛主席鋼筆字的驚艷之作,書法界大揭秘!

書畫相約
2026-04-03 08:51:56
人老了,搞垮自己最快的方式就是:胡思亂想、過度操心、情緒失控

人老了,搞垮自己最快的方式就是:胡思亂想、過度操心、情緒失控

風(fēng)起見你
2026-03-16 11:07:25
蘋果把M4塞進(jìn)599美元平板,iPad Pro用戶集體破防

蘋果把M4塞進(jìn)599美元平板,iPad Pro用戶集體破防

全棧遛狗員
2026-04-03 19:47:06
2026-04-03 20:28:49
鮮棗課堂 incentive-icons
鮮棗課堂
ICT知識科普。
1015文章數(shù) 1256關(guān)注度
往期回顧 全部

科技要聞

5萬輛庫存車,給了特斯拉一記重拳

頭條要聞

吉林下大雪致琿烏高速發(fā)生事故 目擊者:多車連環(huán)追尾

頭條要聞

吉林下大雪致琿烏高速發(fā)生事故 目擊者:多車連環(huán)追尾

體育要聞

沖擊世界杯失敗,80歲老帥一氣之下病倒了

娛樂要聞

夏克立官宣再婚當(dāng)爸?否認(rèn)婚內(nèi)出軌

財經(jīng)要聞

專家稱長期攝入“飄香劑”存在健康隱患

汽車要聞

你介意和遠(yuǎn)房親戚長得很像嗎?

態(tài)度原創(chuàng)

手機(jī)
游戲
本地
藝術(shù)
公開課

手機(jī)要聞

工信部提醒蘋果用戶:iOS 13至17.2.1存在高危漏洞,請盡快升級

任天堂低分新片也能“帶貨” 助力經(jīng)典神作銷量登頂

本地新聞

跟著歌聲游安徽,聽古村回響

藝術(shù)要聞

吳昌碩『扇畫』老辣古拙

公開課

李玫瑾:為什么性格比能力更重要?

無障礙瀏覽 進(jìn)入關(guān)懷版