llama.cpp v0.6.0とvLLMの最新動向:16GB GPU環境でのVRAM最適化と性能改善
目次
llama.cppはggml-orgが開発するC/C++のLLM推論エンジン。GGUF形式の量子化モデルをCPU/GPUで動かす。このエンジンは、ローカル環境での推論効率化を目的とした頻繁なアップデートを続けており、特にCUDA環境におけるメモリ管理と演算最適化が注目を集めている。
今回の要点
- llama.cpp v0.6.0リリース: MTP(Multi-Token Prediction)やGLM5.3対応など、16GB環境での推論効率化に直結する主要な最適化が含まれる。
- vLLMのVRAM削減: GLM5.3モデルでFP8 KVキャッシュをデフォルト採用し、VRAM使用量を削減。オンライン推論の効率化も進んでいる。
- Qwen3.6-35B-A3Bの速度低下報告: llama.cpp v0.5.0-dev以降、MoEモデルでプロンプト処理速度が約2倍遅くなる不具合が報告されている。
- B200環境での演算劣化: 次世代GPU B200において、ADD/GELU演算が38〜54%遅くなる現象が確認されている。
llama.cpp v0.6.0リリース:MTP・GLM5.3対応と主要CUDA最適化
llama.cppがメジャーバージョンアップとなるv0.6.0(ビルド番号 b11433など)をリリースした。このアップデートでは、ggmlコアもv0.26.0にバージョンアップされている。16GB GPUユーザーにとって重要なのは、MTP(Multi-Token Prediction)やGLM5.3などの新モデル対応に加え、CUDA環境におけるメモリ割り当ての最適化が行われた点である。
具体的には、新しい `llama_batch_ext` APIの導入により、トークンと埋め込みの混合バッチ処理が可能になった。これにより、MTPや深層スタックモデルでの推論効率が向上する。また、GLM-5.3-Flash(320Bハイブリッドモデル)やClef判断モデルのサポートも追加された。CUDA環境では、`alloc_deps` チェックのバッチ非依存化や、k-poolモデルにおける予期せぬグラフ再割り当ての修正が行われており、これによりVRAMの効率的な使用と推論の安定性が期待できる。
これらの変更は、特にVRAMが限られる16GB GPU(RTX 3080/4080/5060 Ti 16GBなど)で、大規模モデルや新しいアーキテクチャを動かす際に、メモリ不足やエラーを回避する上で重要である。
根拠: llama.cpp v0.6.0 / b11433 release series, llama.cpp v0.6.0 released (b11430), llama.cpp #29997, llama.cpp #29986, llama.cpp #29958
vLLM: GLM5.3のFP8 KVキャッシュ採用とオンライン推論の強化
vLLMでも、VRAM削減と推論効率化に向けたアップデートが進んでいる。特にGLM5.3モデルにおいて、デフォルトでFP8 KVキャッシュが採用されるようになった。これにより、エンドツーエンドのスループットが2.3〜5.5%向上し、VRAM使用量が削減される。16GB GPUユーザーにとって、VRAMの節約はより大きなコンテキストやバッチサイズを扱えるようになるため、直接的なメリットとなる。
また、オンライン推論におけるスペキュラティブデコーディング(Speculative Decode)の強化も行われた。ドラフトモデルの重みをエンジン再起動なしでホットスワップできる新しいRPCエンドポイントが追加されており、推論中にドラフトモデルをトレーニングしながら推論を行うことが可能になる。さらに、GPUメモリ利用率の変更時に起動計画を正しく無効化する修正も含まれており、16GB RTXユーザーがメモリ設定を調整する際の安定性が向上する。
根拠: vLLM: GLM-5.3-Flash switched to FP8 KV cache by default, vLLM: Online spec decode — hot-swap draft model at runtime, vLLM: Invalidate startup plans when GPU memory utilization changes
CUDA: Qwen3.6-35B-A3Bでプロンプト処理が2倍遅くなる不具合
llama.cppにおいて、大規模MoE(Mixture of Experts)モデルであるQwen3.6-35B-A3Bを使用する場合、プロンプト処理速度が約2倍遅くなる現象が報告されている。この問題は、PR #29184(共有エクスパートのMMVQへの統合)以降に発生しており、v0.5.0-dev(ビルド 11370)で確認されている。
報告者によると、llama-serverでの推論時に顕著に速度低下が観察されたが、llama-benchでは再現しなかったという。この不具合は、MoEモデルの複雑なグラフ構造と、CUDAバックエンドにおけるメモリ割り当ての競合に関連している可能性がある。16GB GPUユーザーがMoEモデルを扱う場合、このバージョンのllama.cppでは推論速度に注意が必要である。
利用者の報告
madsmith 氏は、AMD Ryzen Threadripper PRO 9975WXと3× NVIDIA RTX PRO 6000 Blackwell(96GB)環境で、Qwen3.6-35B-A3B-GGUFモデルを使用している。v0.5.0-dev(ビルド 11370)でプロンプト処理速度が約2倍遅くなる現象を確認し、PR #29184が原因と特定した。llama-serverでは再現したが、llama-benchでは再現しなかったと報告している。
一方、@AIQuanting 氏は、同じQwen3.6-35B-A3BモデルをNVFP4形式でRTX PRO 6000 Blackwell上でテストし、プロンプト処理速度が14,521トークン/秒から14,907トークン/秒へ2.65%向上したと報告している。これは、NVFP4パスの最適化により、レジスタスパイルがゼロになり、実行命令数が減少したためである。この報告は、特定の量子化形式やハードウェア構成では速度低下が発生しない可能性を示唆している。
CUDA: MMVQ最大バッチ制限の修正(仮想アーキテクチャ対応)
MoEモデルにおける仮想エクスパート構成で、最大バッチ制限が正しく適用されない問題が修正された。これは、仮想CUDAアーキテクチャ上でMoEモデルを実行する際に、バッチサイズが制限を超えて処理される可能性があった問題を解決するものである。16GB GPUユーザーがMoEモデルをバッチ処理する際の安定性が向上する。
根拠: ggml-cuda: fix MMVQ max batch limit for virtual CUDA archs
CUDA: B200環境でADD/GELU演算がPDLコミット以降遅化
次世代GPUであるNVIDIA B200において、CUDA ADDおよびGELU_ERF演算の速度が38〜54%遅くなる現象が報告されている。これは、ggml v0.25.3以降、特定のPDL(Programmatic Data Layout)コミットがマージされたことが原因と特定されている。`GGML_CUDA_PDL=0` で無効化しても改善せず、89-virtualアーキテクチャでビルドし直すことで速度が回復する。
この現象は、B200のような高帯域幅GPUにおいて、PDLカーネルのオーバーラップ処理に問題がある可能性を示唆している。将来の互換性を確認する上で注目すべき点である。
利用者の報告
renmengye 氏は、B200環境でggml v0.25.3へのアップグレード後、CUDA ADDおよびGELU_ERF演算が38〜54%遅くなる現象を確認した。AIエージェントによるプロービング実験の結果、PDLコミットが原因と特定し、89-virtualアーキテクチャでのビルドでは速度が回復することを報告している。
aendk 氏は、PDLカーネルは孤立して実行する場合、非PDLカーネルと同等の性能を持つべきだと指摘し、H100/B200のような高帯域幅GPUでは、複数のカーネルを同時に実行する際にPDLによる速度向上が期待できると述べている。この報告は、B200環境でのPDL実装に根本的な問題がある可能性を示唆している。
出典
- llama.cpp v0.6.0 / b11433 release series
- llama.cpp v0.6.0 released (b11430)
- llama.cpp #29997
- llama.cpp #29986
- llama.cpp #29958
- vLLM: GLM-5.3-Flash switched to FP8 KV cache by default
- vLLM: Online spec decode — hot-swap draft model at runtime
- vLLM: Invalidate startup plans when GPU memory utilization changes
- llama.cpp #29980
- ggml-cuda: fix MMVQ max batch limit for virtual CUDA archs
- llama.cpp #30004
- @AIQuanting
SwitchBot公式ページ
クーポン「AF-4903」で5%引き(アフィリエイトクーポンになりますのでご協力お願いします)
割引の詳しい仕組みに関してはこちらのページを参照ください。
製品ごとの特徴・紹介動画は SwitchBot 製品ガイド にまとめています。