官方推文中提到,DeepSeek-V3和R1在線推理系統(tǒng)的優(yōu)化重點有兩個,就是提高吞吐量和降低延遲。

其中,吞吐量就是每秒能輸入和輸出的Token(也就是文字)數(shù)量,越多越好。延遲就是輸入后得到響應(yīng)的等待時間,越短越好。

第一個:大規(guī)模的跨節(jié)點專家并行方案——EP

DeepSeek是MoE模型,MoE(Mixture of Experts,專家混合)的核心思想就是把模型拆分成多個“專家”(Experts),每個專家都是一個獨立的神經(jīng)網(wǎng)絡(luò)模塊。

所以,它的優(yōu)化主要靠跨節(jié)點的專家并行(Expert Parallelism, 簡稱EP)方案來實現(xiàn)。EP非常關(guān)鍵,它能讓多個GPU高效協(xié)作,提高效率和性能。

DeepSeek-V3和R1有256個專家模型,EP方案讓不同的GPU只處理其中的8個,于是就減少了單個GPU的內(nèi)存訪問需求,降低了延遲。

同時,DeepSeek通過EP來支持更大的Batch Size(一次批量處理的數(shù)據(jù)),讓每個專家模型能處理更多數(shù)據(jù),從而提高GPU的矩陣計算效率,提高吞吐。

推理通常分為兩個階段,包括預(yù)填充階段和解碼階段。預(yù)填充階段負(fù)責(zé)一次性處理所有輸入(類似于編碼階段),解碼階段負(fù)責(zé)根據(jù)輸入生成輸出(也就是生成階段)。所以,這兩個階段采用的并行方案也不太一樣。

第二個,用交替執(zhí)行的策略讓計算和通訊的執(zhí)行時間重疊

大規(guī)模并行系統(tǒng)比一體機負(fù)載,因為大規(guī)模EP需要在多個GPU之間傳輸數(shù)據(jù),這會帶來很大的通信開銷,如果處理不好,就會導(dǎo)致計算等待數(shù)據(jù)通信,影響整體效率。

為了解決這個問題,DeepSeek使用了一種雙批次重疊(Dual-Batch Overlap) 策略,讓計算和通信盡可能同時進(jìn)行,減少等待時間,提高吞吐量。

預(yù)填充階段的雙批次重疊(Dual-Batch Overlap) 策略

大致原理上,DeepSeek把一個批次(batch)拆成兩個小批次,然后交替執(zhí)行。比如,當(dāng)?shù)谝粋€小批次在計算時,第二個小批次就可以進(jìn)行通信。當(dāng)?shù)诙€小批次開始計算時,第一個小批次就可以進(jìn)行通信。

解碼階段的雙批次重疊(Dual-Batch Overlap) 策略

預(yù)填充和解碼階段略有不同,但原理相似。這樣一來,通信的時間就被“隱藏”在計算過程中了,而不是讓計算等著通信完成。效率和延遲情況得到優(yōu)化!

第三個,在三個層面上做了負(fù)載均衡

在DeepSeek-V3/R1這種大規(guī)模并行的推理系統(tǒng)中,如果某個GPU計算或通信負(fù)擔(dān)過重,其他GPU劃水,就會造成性能瓶頸,導(dǎo)致整個系統(tǒng)變慢,無法充分利用資源。

為此,DeepSeek試試了三個負(fù)載均衡策略:

預(yù)填充階段的負(fù)載均衡:由于不同請求的工作量不同,會導(dǎo)致某些GPU計算注意力(Attention)的負(fù)擔(dān)過重,有的GPU可能在劃水。而DeepSeek讓每個GPU處理輸入的Token數(shù)量盡量相當(dāng),均衡了各GPU的計算量,從而讓每個GPU都高效運作。

解碼階段的負(fù)載均衡也會因為請求要處理的工作量不同,導(dǎo)致負(fù)載不均衡,特別是在 KVCache的使用上。通過讓KVCache的使用在GPU之間均衡分配,避免某些GPU計算過載,某些空閑,而導(dǎo)致等待,影響效率。

MoE的并行負(fù)載均衡:MoE模型中,不同的專家(experts)計算任務(wù)不同,某些“熱門”專家可能被調(diào)用得更多,導(dǎo)致某些GPU計算壓力過大。DeepSeek通過讓所有GPU處理的專家計算任務(wù)盡量均衡,以此來優(yōu)化專家分配策略,提高整體計算效率。

最終,通過合理的負(fù)載均衡,讓所有GPU計算時間盡可能相近,減少等候時間,以提高整個系統(tǒng)的效率和性能。

DeepSeek官方推理服務(wù)的運營細(xì)節(jié),收益率爆表!

介紹完這些技術(shù)細(xì)節(jié)后,DeepSeek還介紹了在線推理服務(wù)的很多個細(xì)節(jié),每個H800 GPU節(jié)點每秒支持73.7K和14.8k的輸入輸出Token,說明吞吐性能很高。

并且,雖然幻方很有錢,但在線服務(wù)的運營成本控制的很好,成本利潤率高達(dá)545%,收益遠(yuǎn)超成本。

從介紹中看到,所有DeepSeek-V3/R1推理服務(wù)都在英偉達(dá)H800 GPU 上提供,精度與訓(xùn)練一致。具體來說,矩陣乘法和調(diào)度傳輸采用與訓(xùn)練一致的 FP8 格式,而核心 MLA計算和組合傳輸則使用 BF16,以確保最佳服務(wù)性能。

此外,由于白天服務(wù)負(fù)載高,夜間負(fù)載低,DeepSeek實施了一種機制,在白天高峰時段跨所有節(jié)點部署推理服務(wù)。在低負(fù)載的夜間時段,減少推理節(jié)點并分配資源進(jìn)行研究和訓(xùn)練。

在過去 24 小時期間,V3和R1推理服務(wù)的總峰值節(jié)點占用了 278 個,平均占用 226.75 個節(jié)點,每個節(jié)點包含8個H800顯卡。假設(shè)一個H800的租賃成本為每小時2 美元,則每天總成本為 87072 美元,約合人民幣63萬。

在 24 小時統(tǒng)計周期內(nèi),V3 和 R1:

輸入的Token總數(shù)為6080億,其中3420億Token命中了磁盤上的 KVCache,命中率56.3%。總輸出Token為1680億,平均輸出速度為每秒 20-22Token。

每個 H800 節(jié)點在預(yù)填充期間提供約73700個Token/s的輸入(包括緩存命中)的平均吞吐量,在解碼期間提供每秒14800個Token的輸出。

以上統(tǒng)計信息包括來自網(wǎng)頁對話框、手機APP 和 API 的所有用戶請求。

如果所有Token都按照 DeepSeek-R1 的定價計費,則每日總收入將為562027美元,約合人民幣409萬,收入是成本的6.4倍,利潤率為545%。

但實際上,由于DeepSeek-V3 的定價明顯低于 R1,而且現(xiàn)在網(wǎng)頁對話框和APP都是免費提供的,付費的API在非高峰時段還有折扣,所以,實際收入要遠(yuǎn)低于409萬。

上圖展示的是實際成本和理論收入值的情況

這充分證明,如果采用DeepSeek的各種優(yōu)化技術(shù)來在集群里部署滿血版的服務(wù),則可以實現(xiàn)比較大的利潤空間。

另外,目前還不知道與本地單機8張H800部署滿血版的方案相比,在線集群部署的性價比差異大致是什么情況。

https://github.com/deepseek-ai/open-infra-index/blob/main/202502OpenSourceWeek/day_6_one_more_thing_deepseekV3R1_inference_system_overview.md
分享到

zhupb

相關(guān)推薦