首頁 > 科技週邊 > 人工智慧 > DeepSeek發布的優化平行性策略

DeepSeek發布的優化平行性策略

Lisa Kudrow
發布: 2025-03-03 18:34:10
原創
253 人瀏覽過

作為#opensourceweek第4天的一部分,DeepSeek引入了2種新工具,以使深度學習更快,更有效:DualPipe和EPLB。這些工具有助於改善計算機在培訓過程中處理計算和通信的方式,從而使過程更加順暢,更快。在瞬息萬變的深度學習世界中,找到更好的培訓模型的方法是關鍵。 DualPipe和EPLB是解決這些挑戰的前進。本文解釋了這些工具如何工作以及它們如何在深度學習中有所作為。

? #opensourceweek的第4天:優化的平行性策略

✅> dualpipe - 一種用於計算通信的雙向管道並行算法在V3/R1培訓中重疊。 https://t.co/gbtxsvwlt4>✅eplb - v3/r1的專家 - 平行負載平衡器。
此版本標誌著我們開源周慶祝活動的第4天,在第1天的FlashMl成功推出之後,第2天的DEEPEP和第3天的DeepGemm。 內容表的內容
>

>理解管道並行

dualPipe:雙向管道並行parallelism

鍵特徵

  • 技術詳細信息
  • 技術詳細信息
    • 詳細信息
    • >層次負載平衡
    • 全局負載平衡
    • > proping數據:分析計算 - communication-communication ryplap
    方向
  • 結論
  • 理解管道並行性
  • 管道並行性是一種促進模型訓練序列各個段的同時處理的方法。通過對模型進行分區並立即處理多個輸入,管道並行性可以顯著縮寫訓練期。然而,傳統的管道方法論很容易效率低下,包括閒置的間隔或“氣泡”,損害了性能。引入了諸如DualPipe之類的創新,以改善這些效率低下並提高整體效率。 在深度學習中,“管道中的氣泡”的表達表徵了管道平行訓練期間GPU的不活動的間隔,其中管道的一部分停滯不前,等待來自先例段的數據。這會在計算進程中產生“差距”或“氣泡”,最終導致效率低下的GPU資源管理。

    dualpipe:雙向管道並行

    DualPipe是一種複雜的雙向管道並行性算法,旨在最大程度地提高向前和向後計算溝通階段之間的重疊。這種方法在減少管道氣泡的情況下特別有益,這可能會大大阻礙訓練效率。

    鍵特徵

      完整重疊:
    • >實現向前和後階段的完全重疊,確保資源有效地利用。 > >降低管道氣泡:
    • 在訓練過程中最大程度地減少閒置時間,從而提高了資源利用率和更快的培訓時間。
    • 技術細節
    可以通過涉及8個PP等級和20個微批次的調度示例來說明該算法的性能。相反方向的微批次與向前方向的小部分對稱,簡化了圖表。

    方法

    泡泡

    參數

    Method Bubble Parameter Activation
    1F1B (PP-1)(? ?) PP
    ZB1P (PP-1)(? ?-2?) PP
    DualPipe (PP/2-1)(?&? ?-3?) PP 1
    激活 1f1b (pp-1)(??) 1× pp zb1p (pp-1)(??-2?) 1× pp dualpipe (pp/2-1)(?&??-3?) 2× pp 1

    其中:

    • ? :前向塊的執行時間
    • >
    • ? :完整向後塊的執行時間
    • ? :“落後”塊的執行時間
    • >
    • ? &? :兩個相互重疊的前向和向後塊的執行時間

    DeepSeek發布的優化平行性策略

    >示例DualPipe調度配置,用於8 pp(管道並行性)等級和20個微批次,重點關注兩個方向。沿反向方向處理的微批次在向前方向上反映了那些,從而使我們能夠省略其批次標識符,以簡化插圖。共有共同黑邊界的兩個單元參與重疊的計算和通信任務。

    有關更多信息,請訪問dualpipe github存儲庫

    > eplb:專家 - 平行負載平衡器

    > EPLB或專家並行負載平衡器,優化了V3/R1訓練中的負載平衡。它有效地分配了多個處理單元的工作負載,從而提高了整體性能。

    鍵功能

    專家並行性:利用專家模型有效平衡負載,以確保每個處理單元都充分利用其潛力。
      >動態負載平衡:在訓練過程中適應不同的工作負載,允許實時調整以保持最佳性能。
    • 技術細節
    > EPLB(有效的管道負載分佈)旨在明智地分配任務,以減少空閒間隔並增強吞吐量。在不同的模型或任務需要不同級別的計算能力的情況下,這種方法具有更高的意義。

    載荷平衡算法採用了兩種不同的政策,量身定制為不同的情況:

    >層次負載平衡

    當服務器節點的數量平均分為專家組計數時,

    層次負載平衡策略會激活。該策略通過以促進平衡負載分配的方式將專家組最初組織到節點上,利用群體限制的專家路由。隨後,在每個節點內發生專家複製以維持負載平衡。最終,這些複製的專家被分配給單個GPU,從而在不同的GPU中實現了負載平衡。當與較小的專家平行尺寸打交道時,層次負載平衡政策特別適合預填充階段。

    >全局負載平衡

    相反,當服務器節點的計數不划分專家組時,實現了全球負載平衡策略。這種方法涉及專家的全球複製,無論其在專家群體中的分組如何。複製後,專家均勻分配給單個GPU,以確保在整個GPU中保持負載餘額。全球負載平衡策略在處理更大的專家平行尺寸時適用於解碼階段。

    >

    >示例代碼:

    import torch
    
    import eplb
    
    weight = torch.tensor([[ 90, 132,  40,  61, 104, 165,  39,   4,  73,  56, 183,  86],
    
                           [ 20, 107, 104,  64,  19, 197, 187, 157, 172,  86,  16,  27]])
    
    num_replicas = 16
    
    num_groups = 4
    
    num_nodes = 2
    
    num_gpus = 8
    
    phy2log, log2phy, logcnt = eplb.rebalance_experts(weight, num_replicas, num_groups, num_nodes, num_gpus)
    
    print(phy2log)
    登入後複製

    輸出:

    tensor([[ 5,  6,  5,  7,  8,  4,  3,  4, 10,  9, 10,  2,  0,  1, 11,  1],
    
             [ 7, 10,  6,  8,  6, 11,  8,  9,  2,  4,  5,  1,  5,  0,  3,  1]])
    登入後複製

    DeepSeek發布的優化平行性策略

    >視覺表示說明了專家(MOE)混合物的雙層配置,每個層組成12位專業專家。為了提高模型的魯棒性並創建備份機制,我們在每個層中介紹了一個額外的4個專家。這種修改導致每層作為備份的總計16位專家。該系統在2個計算節點上複製並分配這些專家,每個節點包含4個GPU。它應用了層次負載平衡政策,並根據該計劃展示了專家的戰略複製和分配。

    有關詳細的實現指令,請參閱EPLB GitHub存儲庫。

    分析數據:分析計算 - 通信重疊

    為了有效地分析V3/R1中的計算通信重疊,分析數據提供了基本的見解。可以使用這些數據來理解性能的瓶頸和訓練過程的優化。

    鍵功能

    全面分析:這種方法提供了對計算和通信階段的廣泛評估,促進了對系統性能指標的深刻理解。

    績效見解:它指出了提高培訓效率的機會,為開發人員提供關鍵信息來指導優化工作。
    • 培訓分析數據
    培訓配置文件數據說明了雙管內的個人前向和向後塊的策略。每個塊均包含4層專家混合物(MOE)。並行配置匹配DeepSeek-V3預處理中使用的設置,該設置專門使用EP64(Epoch 64)和TP1(具有1令牌的顳填充)配置,序列長度為4K。為了使事情保持簡單,我們在分析過程中排除了PP(管道並行)通信。

    以獲取更多信息並訪問分析數據,請訪問分析數據GitHub存儲庫。

    現實世界應用

    DualPipe和EPLB的實際應用表現出令人鼓舞的結果,例如自然語言處理,計算機視覺和強化學習等不同領域的結果。通過完善培訓過程,這些方法促進了快速模型的收斂和提高精度,證明是研究人員和從業人員的必不可少的工具。

    >

    未來方向

    隨著深度學習的領域的發展,對更有效的培訓方法的需求可能會升級。未來的研究可能會集中於擴大雙管和EPLB的有效性,這可能是通過研究將兩者優勢融合的混合模型。此外,這些策略與尖端技術(包括量子計算)的整合可能鋪平了新穎的優化途徑。

    結論

    通過雙管和EPLB在平行策略中的進步標誌著精煉深度學習訓練程序的大步發展。通過利用這些算法,研究人員和從業人員都可以實現卓越的資源利用和加速培訓時間,最終達到更有效的模型創建。分析數據的同化增強了校準這些過程的能力,確保深度學習的快速發展軌跡持續存在。

以上是DeepSeek發布的優化平行性策略的詳細內容。更多資訊請關注PHP中文網其他相關文章!

本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板