選擇語言

Splitwise:基於階段分割的高效能生成式LLM推論技術

Splitwise透過將提示計算與權杖生成階段分配至不同機器,優化LLM推論,實現更高吞吐量與更低成本/功耗。
computingpowercoin.org | PDF Size: 2.6 MB
評分: 4.5/5
您的評分
您已經為此文檔評過分
PDF文檔封面 - Splitwise:基於階段分割的高效能生成式LLM推論技術

目錄

1. 引言

生成式大型語言模型(LLM)已徹底改變自然語言處理領域,但其計算需求對高效能推論構成重大挑戰。Splitwise方法透過識別並利用LLM推論中兩個主要階段的獨特計算特性,來應對這些挑戰。

2. 背景與動機

2.1 LLM推論階段

LLM推論包含兩個截然不同的階段:

  • 提示計算階段:對所有輸入權杖進行計算密集的平行處理
  • 權杖生成階段:對輸出權杖進行記憶體密集的序列生成

2.2 硬體限制

GPU規格比較

A100 vs H100:計算能力提升3.43倍,但記憶體頻寬僅改善1.64倍

現代GPU在計算能力與記憶體效能之間呈現不成比例的擴展,導致LLM推論效率低下。

3. Splitwise設計

3.1 架構概覽

Splitwise將提示計算與權杖生成部署於各自獨立的機器上,並針對每個階段的需求進行最佳化。

3.2 階段專屬資源管理

提示階段使用高效能GPU(H100),權杖生成階段則採用成本效益型GPU。

4. 技術實作

4.1 數學基礎

轉換器中的注意力機制可表示為:

$Attention(Q, K, V) = softmax(\\frac{QK^T}{\\sqrt{d_k}})V$

其中$Q$、$K$、$V$分別代表查詢、鍵與值,$d_k$為鍵的維度。

4.2 程式碼實作

class SplitwiseScheduler:
    def schedule_request(self, request):
        if request.phase == "prompt":
            return self.assign_to_prompt_machine(request)
        else:
            return self.assign_to_token_machine(request)
    
    def transfer_state(self, prompt_output, token_machine):
        # 使用RDMA進行高效狀態傳輸
        return token_machine.load_state(prompt_output)

5. 實驗結果

Splitwise實現:

  • 吞吐量提升1.4倍,成本降低20%
  • 在相同功耗與成本預算下,吞吐量增加2.35倍
  • 改善延遲一致性與資源利用率

6. 分析與討論

Splitwise透過解決計算需求與硬體能力之間的根本性不匹配,代表了LLM推論最佳化的重大進展。此方法借鑑了分散式系統原則的靈感,類似於MapReduce及其他平行處理框架所使用的原理。透過認識到權杖生成階段屬於記憶體限制而非計算限制,Splitwise實現了更符合每個推論階段實際計算需求的資源分配。

這項工作建立在電腦架構中的既定原則之上,特別是Wulf與McKee於1995年提出的記憶體牆問題,該問題強調了處理器速度與記憶體效能之間日益擴大的差距。轉換器架構的注意力機制最初由Vaswani等人於2017年論文《Attention is All You Need》中提出,其本質上創造了這兩個不同的計算階段,但先前的優化努力主要集中於模型壓縮與量化,而非架構分離。

相較於傳統的單體部署,Splitwise的階段分離方法展示了如何更有效地利用專用硬體,類似於Google的TPU pods針對特定機器學習工作負載進行最佳化的方式。考慮到現代LLM部署的龐大規模,1.4倍的吞吐量提升與20%的成本降低尤其顯著,即使是微小的百分比改善也能轉化為可觀的營運節省。

此方法與異質計算的最新趨勢相符,該趨勢中系統會結合針對特定任務最佳化的不同類型處理器。隨著LLM在規模與複雜度上持續增長,像Splitwise這樣的方法對於永續AI部署將日益重要,同時解決與大規模模型推論相關的經濟與環境問題。

7. 未來應用

未來方向包括:

  • 多模態模型推論最佳化
  • 邊緣計算部署
  • 即時自適應資源分配
  • 與新興硬體架構的整合

8. 參考文獻

  1. Vaswani, A., 等人《Attention is All You Need》。NeurIPS 2017。
  2. Brown, T., 等人《Language Models are Few-Shot Learners》。NeurIPS 2020。
  3. Wulf, W. A., 與 McKee, S. A.《Hitting the memory wall: implications of the obvious》。ACM SIGARCH Computer Architecture News,1995。
  4. NVIDIA Corporation《NVIDIA H100 Tensor Core GPU Architecture》。2022。
  5. Dean, J., 與 Ghemawat, S.《MapReduce: Simplified data processing on large clusters》。OSDI 2004。