
大型語言模型(Large Language Model,LLM)逐個生成 token 時,延遲往往受記憶體讀取限制;SparseDecoding 以解碼階段為核心重新設計剪枝流程,減少需要讀取的非零參數,處理稀疏模型加速與輸出質素之間的取捨。
傳統剪枝方法通常從固定自然語料收集 calibration activations,再計算 Hessian;但模型生成 token 時會依賴自己早前產生的內容,兩者分佈不一致,令剪枝後的表現受影響。SparseDecoding 改為在 dense model 進行 autoregressive generation 時,按層收集模型自行生成的 activation,並略過 prefill 階段,讓校準資料更貼近真正解碼流程。
系統部分則針對解碼主導的 sparse matrix-vector(SpMV)運算,加入支援 N:M sparsity 的 bitmask indexing 與 fixed-step traversal kernel。這和主要優化 prefill 的 sparse matrix-matrix multiplication(SpMM)方案不同,後者在部分 autoregressive decoding 情境下未必能超越 dense throughput。
實驗涵蓋 Llama-3.1-8B、Llama-3.3-70B 及 Qwen3-14B/32B,在 WritingBench 和 ClassEval 等測試中維持具競爭力的結果;A100 上的端到端 decoding speedup 最高達 1.48×,不同稀疏模式則約為 dense 模型的 1.34 至 1.48 倍。
- 以模型自行生成的 token 作 decoding-aware calibration
- 略過 prefill activation,聚焦 autoregressive decoding
- 提供優化 N:M SpMV kernel,支援 bitmask indexing
- 在 50% 權重保留率及 2:4 sparsity 下測試
- 目前屬於 preprint,程式碼標示為即將提供