要問最近哪個模型最火,混合專家模型(MoE,Mixture of Experts)絕對是榜上提名的那一個。
它的巧妙之處,就在于把不同的任務分配給擅長處理的專家網絡,讓整個系統性能得以提升。
但你知道嗎?
正是這個關鍵的專家網絡,也是嚴重影響系統推理性能的因素之一。
因為在大量任務來臨之際(尤其是超大規模時),MoE并不是以“雨露均沾”的方式去分配——專家網絡們的負載均衡問題,就會顯得尤為突出。
這個問題的根源,是因為某些專家網絡總是被頻繁調用(熱專家),而另一些專家網絡則鮮有機會派上用場(冷專家)。
沒錯,MoE里的“專家們”也是有冷熱之分的,而且被調用頻率的差距甚至可以達到一個數量級以上!
如此負載不均衡的現象,就會導致整個系統推理的時間被延長,以及還有資源利用率、系統性能受限等問題。
那么此局又該如何破解?
別急,華為團隊已經給出了一種有效解法,直接讓DeepSeek-V3在理論上的推理延遲可降低約10%、吞吐量可提升約10%。
值得一提的是,團隊還將在近期準備把這個解法全面開源了;那么接下來,我們就來深入了解一下。
華為的刀法:OmniPlacement
針對專家們冷熱不均的問題,華為優化的刀法,叫做OmniPlacement。
簡單來說,它的工作原理是這樣的:
通過專家重排、層間冗余部署和近實時動態調度,顯著提升MoE模型的推理性能。
具體可以分為三步走:
第一刀:基于計算均衡的聯合優化
在這一步中,華為團隊通過分析專家的活躍度(激活數據),先是識別出了忙碌的熱專家和清閑的冷專家。
然后將提出的一種基于計算均衡的聯合優化算法OmniPlacement用了上去。
這個算法會根據專家調用頻率和計算需求來優化部署的順序,這樣就會顯著降低負載不均的現象。
具體來說,OmniPlacement算法的特點如下:
動態優先級調整:通過實時統計專家調用頻率,動態調整專家的優先級和節點分配,確保高頻專家優先部署在計算能力較強的節點上。
通信域優化:算法分析批次內激活卡數,優化跨節點通信域的范圍,減少通信延遲。相比傳統的靜態分配方法,本算法顯著降低了通信開銷。
層間差異化部署:允許不同層根據負載特性設置不同的專家部署策略,支持非均勻冗余次數配置,從而更好地適應層間負載差異。
△相同數據條件下,EPLB與OmniPlacement算法,每層設備最大激活數理論對比第二刀:層間高頻專家冗余部署
剛才的步驟是面向冷熱專家整體,那么這一步則是劍指熱專家。
為了緩解熱專家的壓力,華為團隊還提出了一種層間冗余部署的策略——
通過為高頻調用專家分配額外的冗余實例,降低跨節點通信開銷,從而提升系統吞吐量。
這個策略的創新點在于:
動態資源分配:根據實時計算資源占用情況和專家調用頻率,動態調整冗余實例的分配比例。系統通過預測模型提前分配資源,減少冷熱專家間的性能差距。
層間差異化配置:不同層根據負載需求設置不同的冗余次數,增強對層間負載差異的適應能力。例如,高負載層可分配更多的冗余實例,而低負載層則減少冗余以節省顯存。
預測性分配:結合歷史激活數據和負載預測模型,系統能夠提前優化資源分配,降低突發負載對系統性能的影響。
△冗余不同層數排布的理論熱力圖第三刀:近實時調度與動態監控機制
為了讓系統能更靈活地應對各種變化,在實際運行中快速做出反應,研究團隊設計了一套類似 “智能管家” 的方案——
近實時調度與動態監控機制。
其具體包含的子模塊如下:
近實時調度:通過實時統計數據流特性,動態調整專家分配以適應輸入數據的變化。調度算法能夠在毫秒級時間內收斂到優化的靜態專家部署模式,確保推理過程的高效性和一致性。該機制通過迭代優化專家分配,顯著降低了動態調整的計算開銷。
動態監控:實時跟蹤專家激活數據和系統資源占用情況,為調度決策提供準確依據。監控任務在獨立的計算流中運行,避免對推理主流程的干擾,保障系統整體效率。
動態專家權重訪問與擺放:通過層間流水線設計,實現專家權重和分配的動態調整。系統在推理過程中并行處理權重更新和數據流分配,支持高效的專家動態擺放。流水線設計允許在不中斷推理流程的情況下完成權重調整,顯著降低高負載場景下的推理延遲。
這套機制通過兩個關鍵設計大幅提升了系統性能:
首先采用多任務并行處理技術,讓系統反應更快、調整更靈活;其次獨創性地將監控和調度功能分開運行。
這樣既保證了實時監控的準確性,又避免了監控程序拖慢系統速度,使整個系統運行更加穩定可靠。
△近實時調度理論效果與收斂性
為了支持上述技術的穩定運行,團隊還開發了適用于vLLM的推理優化框架OmniPlacement,其核心特點如下:
高兼容性:框架支持多種MoE模型架構,能夠無縫集成到現有的推理系統中。
低時延開銷:通過優化數據處理和調度流程,框架顯著減少了額外計算開銷,確保推理性能不受影響。
模塊化設計:框架包含數據統計、算法運行和專家調度三大模塊,各模塊功能解耦,支持功能擴展和維護。模塊化設計便于快速迭代和定制化開發。
可擴展性:框架支持動態添加新的負載均衡算法和調度策略,適應未來MoE模型的復雜需求。
OmniPlacement采用模塊化設計,把核心算法和推理流程分開處理,就像把汽車的發動機和控制系統分開優化一樣。
這樣設計有兩個突出優勢:
一是專門負責任務調度的模塊可以獨立工作,不會干擾主系統的運行效率;二是整個框架可以根據不同需求靈活調整,為大型AI模型的穩定運行提供了堅實的底層支持。
DeepSeek V3系統延遲理論可直降10%
在了解完華為的“刀法”之后,我們再來看下“療效”。
華為團隊把這套優化方法在DeepSeek-V3上進行了全面驗證,實驗環境包括多節點GPU集群和高并發推理場景。
得到了如下的測試結果:
推理延遲:相比基線方法(未優化負載均衡的MoE模型),推理延遲平均降低約10%。延遲的減少主要得益于動態專家分配和通信域優化,顯著改善了用戶體驗。
吞吐量:系統吞吐量提升約10%,反映了資源利用率的顯著提高。特別是在高并發場景下,冗余部署和動態調度有效緩解了負載瓶頸。
系統穩定性:在動態輸入和高負載場景下,系統保持高效運行,未出現性能波動或服務中斷。動態監控機制確保了系統對突發負載的快速響應。
△OmniPlacement與基線和BestEP的性能對比
進一步的分析表明,OmniPlacement在不同規模的MoE模型和輸入數據分布下均表現出良好的適應性。
并且從實際測試證明來看,它不僅能大幅提升運算效率,還能更合理地利用計算資源,同時保持系統穩定運行。
這為今后在實際應用中部署大型MoE模型提供了堅實的技術保障。
最后值得一提的是,華為團隊不僅是發布優化方案這么一個動作,更是要將這個方法在近期全面開源。
完整技術報告:點擊獲取
技術博客:點擊查看
鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯系我們修改或刪除,多謝。