返回首頁

邊緣 AI/推論系統

mzCache 以 CPU/GPU 並行還原手機 LLM 記憶體,首 token 延遲縮短 2.1 至 5.5 倍

MobiCom 2026 研究把模型權重與 KV cache 切成共享緩衝區,讓 GPU 在 CPU 還原被逐出的資料時先開始 prefill。成果針對手機多工後的恢復延遲,而非提升模型本身的生成速度。

Tolbxela · CC BY 2.0 · Image source
zh-Hant

首爾大學與加州大學柏克萊分校研究人員提出 mzCache,處理裝置端 LLM 在使用者切換相機、遊戲或影片 App 後,被 Android 記憶體回收機制逐出權重與 KV cache 的問題。論文指出,小於 3B 參數的模型連同長上下文仍可佔用 5 至 7 GB;以 Qwen3-0.6B 為例,32K 上下文的 KV cache 約 3.5 GB。一般 zRAM 使用 LZ4 或 Zstd,對測試中的 KV cache 只能節省約 0.2% 至 9.3% 空間,壓力持續時 Low-Memory Killer 可能直接終止模型程序。[mzCache 論文](https://arxiv.org/abs/2609.01338)將權重按層、KV cache 按固定 token 區塊拆成 OpenCL Shared Virtual Memory 緩衝區,避免傳統連續大區塊只能整體保留或釋放。

系統的核心不是單純 swap,而是以「如何最快恢復」決定逐出順序。mzCache 優先逐出較後面的 Transformer 層,保留推論最先使用的前段層;新請求到達時,GPU 立即從仍在記憶體的層開始 prefill,CPU 則依前向順序從快閃儲存讀回權重、從壓縮區解壓 KV 區塊。自訂 OpenCL attention kernel 能直接串流非連續 KV 指標,不必先合併成完整緩衝區。約六千行 C/C++ 實作建立在 llama.cpp 上,並以 ARM NEON 執行 KV 壓縮。

研究在商用手機及 Qwen3-0.6B、EXAONE-4.0-1.2B 上比較儲存式部分卸載,報告 TTFT 縮短 2.1 至 5.5 倍;Galaxy S25+ 的多工測試中,標準 OS 路徑每輪都遭終止,mzCache 則保留會話狀態。[研究團隊的出版頁](https://sites.google.com/view/kyunghanlee/publications)列明論文已獲 MobiCom 2026 接受。不過目前未找到公開程式碼,評測亦集中於 Qualcomm Adreno、兩個小模型與少數手機;能否移植至 NPU、Metal 或更大模型,以及額外峰值功耗與快閃寫入成本,仍是部署前必須驗證的部分。

來源

  1. mzCache: On-Device LLM Memory Management under Multitasking
  2. Selected Publications: mzCache
  3. mzCache paper overview