| 今週、2台のマシンでTurboQuantをテストしていて、実際の数値を共有したいと思いました。 なぜ重要か: TurboQuantはモデル重みではなくKVキャッシュを圧縮します。長いコンテキストではKVキャッシュが数GBのメモリを占有することがあるため、スループットが似たままでも、削減できれば大きな違いになりえます。 私が試したセットアップでは、Kはq8_0のままで、Vはturbo3(~3-bit)にしています。この非対称なトレードオフには意味があります。キーの誤りは注意のルーティングにより直接的に影響しやすい一方で、値(values)はより重い圧縮に対して許容度が高いことが多いからです。 ベンチマーク1: Mac Mini M4 16GB — Qwen3-14B Q4_K_M を8Kコンテキストで → TurboQuantなし: KVキャッシュ 1280 MiB、K(f16): 640 MiB、V(f16): 640 MiB — 9.95 t/s → TurboQuantあり: KVキャッシュ 465 MiB、K(q8_0): 340 MiB、V(turbo3): 125 MiB — 9.25 t/s ベンチマーク2: M3 Max 48GB — Qwen3.5 35B A3B Q6 を128Kコンテキストで → TurboQuantなし: KVキャッシュ 2560 MiB、K(f16): 1280 MiB、V(f16): 1280 MiB — 45.34 t/s → TurboQuantあり: KVキャッシュ 930 MiB、K(q8_0): 680 MiB、V(turbo3): 250 MiB — 42.88 t/s 使い方 これはTheTomによるコミュニティフォークを使用しています。Apple Silicon向けのMetalカーネルが含まれています。まだmainlineのllama.cppには入っていませんが、PRは開かれています。 # TurboQuantフォークをクローン(まだmainline llama.cppには入っていません) git clone https://github.com/TheTom/llama-cpp-turboquant.git cd llama-cpp-turboquant git checkout feature/turboquant-kv-cache # Metalで設定(Apple Silicon GPU) cmake -B build -DGGML_METAL=ON -DGGML_METAL_EMBED_LIBRARY=ON -DCMAKE_BUILD_TYPE=Release # CPUの全コアでコンパイル cmake --build build -j$(sysctl -n hw.ncpu) # TurboQuantで実行: キーはq8_0、値はturbo3で圧縮 ./build/bin/llama-server YouTubeで詳細な手順を近日公開します。 [link] [comments] |
Apple Silicon上のTurboQuant:Mac Mini M4 16GBとM3 Max 48GBでの実測ベンチマーク
Reddit r/LocalLLaMA / 2026/4/6
💬 オピニオンSignals & Early TrendsTools & Practical UsageModels & Research
要点
- TurboQuantはKVキャッシュのみを削減します(モデル重みは削減しません)。そのため、長いコンテキストでの推論中に数GB規模のメモリ使用量を大きく抑えつつ、スループットは比較的同程度に保てます。
- M4のMac Mini(16GB)でQwen3-14Bを8Kコンテキストで動かした場合、KVキャッシュは1280 MiBから465 MiBへ低下します(約3倍)。速度は大きくは変わらず、9.95 t/sから9.25 t/sへとわずかに低下する程度です。
- M3 Max(48GB)でQwen3.5 35Bを128Kコンテキストで動かした場合、KVキャッシュは2560 MiBから930 MiBへ低下します(約3倍)。スループットの低下はより小さく、45.34 t/sから42.88 t/sへとわずかです。
- 記述されている非対称な圧縮設定では、Keysはq8_0のままにし、Valuesはturbo3(約3ビット)に圧縮します。これは、著者の見解として、値の精度よりもキーの精度のほうが注意(attention)のルーティングにより直接的に影響するためです。
- ベンチマークではコミュニティフォーク(TheTom)を使用し、Apple Silicon向けのMetalカーネルを採用しています。これは現時点でllama.cppのメインラインにはまだ入っていませんが、著者はオープンPRへの言及と有効化のためのビルド手順を提示しています。



