LocalLLaMAが注目したTurboQuant実装、sparse V dequantで32K decodeを22.8%改善

LocalLLaMA投稿の要点

2026年3月27日、LocalLLaMA に turboquant_plus を紹介する self-post が上がった。これは Google の TurboQuant の発想を llama.cpp に持ち込む open-source 実装と、sparse V dequantization という新しい kernel 最適化のメモを合わせて示すものだ。考え方は単純で、flash attention の decode では long context になるほど attention weight の大半がほぼゼロになる。ならばすべての dequant を少しずつ速くするより、attention weight が 1e-6 未満の位置では V の dequant 自体を飛ばしてしまう、という発想だ。

なぜ面白いのか

リポジトリの説明では、quantized KV cache は memory capacity を稼ぐ代わりに decode 時の dequant overhead を持ち込む。Apple Silicon では、その overhead が long context でかなり大きなボトルネックになるという。提案されている修正は意外なほど小さい。V path に3行ほどの条件分岐を足すだけだ。それでも公開された結果は大きい。付属の markdown writeup によると、M5 Max 上で Qwen3.5-35B-A3B と turbo3 cache を使った場合、32K context の decode は 47.0 tok/s から 57.7 tok/s に上がり、22.8% 改善したという。標準の q8_0 KV cache でも同じ発想で 5% の decode 改善が出たとされ、特定の compression format だけの小技ではないと主張している。

品質確認と解釈

興味深いのは、この投稿が速度だけを強調していないことだ。writeup では perplexity と NIAH の確認も並べている。WikiText-2 perplexity は実質的に変わらず、single-needle retrieval は sparse V ありで 7/9 から 9/9 に改善したという。著者の解釈は、極端に小さい attention weight の位置は有用な signal より quantization noise を増やす可能性があり、そうした V accumulation を丸ごと外す方が出力をきれいにできる、というものだ。

モデルとハードウェア: Apple M5 Max の llama.cpp Metal kernel 上で Qwen3.5-35B-A3B を使用。

主な改善: turbo3 で 32K context decode が +22.8%。

一般化の主張: 同じ gating の考え方が q8_0 KV decode にも効いた。

もちろん、これはまだ upstream standard ではない。リポジトリでも CUDA を含む追加検証が進行中だとしている。それでもこの LocalLLaMA 投稿が価値を持つのは、LLM systems work でよくある転換点をよく示しているからだ。instruction-level の最適化が hardware floor に突き当たったら、次の一手は計算を少し速くすることではなく、不要な計算を消すことになる。今回のコミュニティ実験は、そのレバーとして attention sparsity 自体を使った。

Community source: LocalLLaMA discussion. Original materials: repo と sparse-v-dequant writeup.