分散式訓練與高效推論:先找成本在哪裡|CMU 10-423 主題單元
模型放不下一張GPU,和模型已放得下卻生成太慢,是不同故障。分散式策略重新分配資料、參數與狀態;FlashAttention主要改善attention的記憶體IO;KV cache避免decode時重算歷史K/V。先找成本的位置,再選方法。
模型放不下一張GPU,和模型已放得下卻生成太慢,是不同故障。分散式策略重新分配資料、參數與狀態;FlashAttention主要改善attention的記憶體IO;KV cache避免decode時重算歷史K/V。先找成本的位置,再選方法。
11-868 用兩講回答同一個問題:一台推論伺服器怎麼同時服務大量請求,又不浪費 GPU 上的 KV cache。第 22 講(Lei Li)從 SGLang 的排程迴圈講起:ORCA 的 continuous batching、用 radix tree 管 KV 的 RadixAttention、依前綴命中率排序與分流、把 CPU 排程藏到 GPU 計算後面。第 24 講由 vLLM 作者 Woosuk Kwon 主講:PagedAttention 把 KV cache 切成固定大小的 block,用 block table 做虛擬化,讓同一張 A100 的 batch 從 8 撐到 40;後半講 vLLM 怎麼壓 CPU overhead、用 piecewise CUDA graph、切模型平行與管理混合架構的記憶體。
vLLM 是自架 LLM 推論的事實標準(GitHub 89,470 stars,2026-08-21 實查),核心是把 KV cache 當作業系統的分頁來管。但選型的關鍵不在它多快,在你的 GPU 使用率:以 Red Hat 實測的每秒 793 個輸出 token 換算,一張打滿的 A100 約 $0.70 / 百萬輸出 token,使用率掉到一成就變 $7——比多數雲端 API 貴。
vLLM 用 PagedAttention 解決 KV cache 記憶體浪費問題,搭配 continuous batching 和 prefix caching,成為目前最主流的開源 LLM 推論引擎。