Skip to content
Yunedia Tools

VRAM計算

LLMの実行に必要なVRAMを、量子化別の重みと、文脈長・バッチサイズに応じたKVキャッシュから見積もる。

活性化、CUDAコンテキスト、断片化のための余裕。実測値ではなく粗い見積もり。

重み
16.00 GB
KVキャッシュ
1.07 GB
合計(オーバーヘッド込み)
19.63 GB

24 GB の VRAM に収まる

KVキャッシュの要素は、FP32を選ばない限り一般的な推論の既定に合わせて FP16(2バイト)で計算する。

KVキャッシュのバイト数 = 2(KとV)× 層数 × KVヘッド数 × ヘッド次元 × コンテキスト × バッチ × 要素バイト数。重み = パラメータ数 × パラメータあたりバイト数。

使い方

  1. プリセットを選ぶか、パラメータ数とアーキテクチャ(層数、KVヘッド数、ヘッド次元)を直接入力する。
  2. 量子化、コンテキスト長、バッチサイズを設定する。
  3. 重み、KVキャッシュ、オーバーヘッド込みの合計と、収まる VRAM サイズの目安が表示される。

注意事項

プリセットのアーキテクチャ値は各モデルの公開 config に基づく近似で、全項目は編集できる。KV キャッシュは 2 × 層数 × KVヘッド数 × ヘッド次元 × コンテキスト × バッチ × 要素バイト数 で計算し、要素は FP32 選択時を除き FP16(2バイト)とする。オーバーヘッド(既定15%)は活性化や断片化のための粗い余裕で、実際の使用量は推論フレームワークや設定で変わる。学習(勾配・オプティマイザ状態)は対象外で、推論専用の見積もり。

よくある質問

GQA って何で KV ヘッド数が効くの?
最近のモデルは Grouped-Query Attention で KV ヘッド数を注意ヘッド数より少なくしており、その分 KV キャッシュが小さくなる。プリセットの KV ヘッド数はその実際の値。
計算が合っているのに起動しないのはなぜ?
フレームワークの作業領域、CUDA コンテキスト、トークナイザーや埋め込みの追加分などで、計算以上に使うことがある。オーバーヘッド率を上げて見積もると安全側に倒せる。