VRAM.cpp:ブラウザ上で llama-fit-params を直接実行する

Reddit r/LocalLLaMA / 2026/4/27

💬 オピニオンDeveloper Stack & InfrastructureTools & Practical UsageModels & Research

要点

  • 著者は、既存の「VRAM計算機」ツールの精度や対応範囲の限界を踏まえ、特定のGGUF量子化LLMバリアントがユーザーの環境で動作できるかをより正確に見積もる方法を提案しています。
  • VRAM.cppは、ブラウザ上で llama.cpp のfitアルゴリズムを実行し、モデルの層/テンソルを利用可能なデバイス(GPUやホストメモリなど)に割り当てて、ハード改良とともに推定を更新できるようにしています。
  • プロジェクトはWebアプリとオープンソースのコードとして提供され、大容量のモデル重み(900GB級)をダウンロードしてテストフィットを繰り返す手間を減らすことを狙っています。
  • 著者は、2GPU+ホストRAMでモデルを分割する場合などマルチGPU環境で挙動が不安定な点や、MoEフィッティングがまだ不揃いな可能性(主にllama.cppの現状)を指摘しています。

このサブレディットでは、自分のシステムで特定のモデルを動かせるかどうかをいつもたくさんの人が尋ねています。私が見つけた多くの「VRAM計算機」は、非常に大雑把な推定しか提供しないか、あるいは推定できるモデル数に厳しい制限があることがほとんどです。これは、現在市場に出回っているさまざまな種類のアテンションに対して、どれだけのメモリが利用されているかを把握するのが複雑だからです。その結果、役に立つのは一部の人にはなるものの、「16GBのGPUとホストRAM 32GBで、unsloth もしくは bartowski のこの特定のQ3量子化バリアントを動かせるのか?」という問いには答えられません。

私は、常に最新の状態で、かつ、あるモデルが特定のシステム上で「動くのか」「どれくらい良く動くのか」を正確に見積もれるものを作ろうと考えました。llama.cpp には、層/テンソルを異なるデバイスに割り当てるためのfitアルゴリズムがすでにあり、さらに改良されてより堅牢になり続けています。答えは単純で、提案されたシステム上でGGUFが動かせるかどうかを推定するためにfitアルゴリズムをブラウザ上で直接実行するだけです。追加の利点として、llama.cpp がより新しいモデルにも対応しているため、この推定器もそれらを同様に扱えます。

アプリ: https://acon96.github.io/vram.cpp/ コード: https://github.com/acon96/vram.cpp

マルチGPUのシナリオでは、まだ少し奇妙な挙動があります。特に、2つのGPUとホストメモリの両方にまたがってモデルを分割しようとすると、非常に不自然な動きをします。MoEのフィッティングも少し変わっていますが、それも現時点では llama.cpp の一部である可能性が高いです。また、正しいバッファの対応能力が公開されるように、他のバックエンドのバリアントをいくつか追加する必要もまだあります。

900GBもの重みをダウンロードしたり、大量の時間を使ってテスト用のfitを回したりせずに、自分のモデルに合った正しい量子化を見つけるのに役立てばと思います。

投稿者 /u/TheAconn96
[link] [comments]