- モデル重み
- —
- 作業メモリ
- —
- CUDA オーバーヘッド
- —
OOM 回避のための概算で、正確値ではありません(余裕を見てください)。足りないときは fp8・解像度を下げる・バッチを減らす・tiled VAE / --medvram を。
Stable Diffusion 系(SD1.5 / SD2.x / SDXL・Pony・Illustrious / SD3 Medium / Flux.1)の画像生成に、どれくらい VRAM が要りそうかを概算するツールです。『CUDA out of memory(OOM)』で生成が落ちる前に、解像度やバッチサイズを上げて大丈夫かを当たりで掴むために使います。見積もりは3つの要素に分けて出します。(1) モデル重み=パラメータ数 × 精度のバイト数(fp16/bf16 は2バイト、fp32 は4バイト、fp8 は1バイト)。(2) 作業メモリ(潜在・活性・Attention)=基準値 × バッチサイズ × 解像度比(512×512 を1とした面積比)× Attention 係数 × 精度比。xformers / SDP などの省メモリ Attention を使うと作業メモリは大きく下がり、vanilla(なし)だと高解像度で急増します。(3) CUDA とフレームワークの固定オーバーヘッド。合計を出したうえで、8GB / 12GB / 16GB / 24GB の GPU それぞれに「OK / ギリギリ / OOM」で載るかを表示します(VRAM はモデルや実装で差が出るため、9割を超えたら『ギリギリ』として余裕を見ています)。これはあくまで概算で、xformers の有無・VAE のタイル化・--medvram / --lowvram・オフロード・OS が使う分などで実際値は変わります。落ちるときは、fp8 にする・解像度を下げる・バッチを減らす・tiled VAE や --medvram を使う、を順に試してください。計算はすべてブラウザ内の算術だけで行い、入力値を外部の API やサーバーへ送信することは一切ありません。
使い方
- モデル(SD1.5 / SDXL / SD3 / Flux)と精度(fp16・fp32・fp8)を選びます。
- 生成する幅・高さ・バッチサイズ、Attention(省メモリ/なし)を入力します。
- VRAM 概算と内訳、各 GPU(8/12/16/24GB)に載るかを確認します。
よくある質問
入力した値はどこかに送信されますか?
いいえ。VRAM の概算は、お使いのブラウザ内の算術だけで行います。モデル・解像度・バッチなどの入力を外部の API やサーバーへ送信することはなく、すべて端末内で完結します。
表示される数値はどこまで正確ですか?
あくまで概算です。実際の VRAM は、UI(A1111 / Forge / ComfyUI)や実装、xformers の有無、VAE のタイル化、--medvram / --lowvram、オフロード、OS が使う分などで変わります。OOM を避けるための『当たり』として使い、余裕を見て判断してください。
精度(fp16 / fp32 / fp8)は何を選べばいいですか?
通常は fp16 / bf16 が既定で、迷ったらこれです。fp32 はほぼ倍の VRAM を食うため特別な理由がなければ使いません。fp8 は VRAM を抑えられますが、対応するのは主に Flux / SD3 など一部で、画質が僅かに変わることがあります。
OOM(out of memory)で落ちます。どうすれば?
効果の大きい順に、fp8 にする・解像度を下げる・バッチサイズを減らす・tiled VAE を有効にする・--medvram(または --lowvram)を付ける、を試してください。Flux / SD3 ではテキストエンコーダ(T5)のオフロードも効きます。
Attention の『省メモリ』と『なし』の違いは?
xformers や PyTorch の SDP(scaled dot-product attention)を使うと、Attention の中間メモリを大きく節約でき、高解像度でも作業メモリが膨らみにくくなります。『なし(vanilla)』は解像度を上げると Attention のメモリが急増し、OOM の主因になりがちです。