ファンサイトに戻る

PROMPT GUIDE

CUDA out of memory の直し方(画像生成でメモリ不足のエラーが出る時)

AIイラストを作っていると、「CUDA out of memory」というエラーで止まることがあります。英語で赤い文字がずらっと並ぶので驚きますが、意味はシンプルで、グラフィックボードのメモリ(VRAM)が足りなくなったということです。この記事では、エラーの読み方と、効果が出やすい順の直し方をまとめました。

最終更新: よみもの めやす 約3分

結論を先に

CUDA out of memory は、グラボのメモリ(VRAM)が足りなくなった時のエラーです。画像サイズを下げる、バッチサイズを 1 にする、画面を再起動してメモリを空ける、使っていない拡張機能やモデルを外す、の順に試すと、多くの場合で直ります。それでも出る時は、メモリ節約の設定や軽いモデルを検討します。

CUDA out of memory とはどういうエラー?

グラフィックボードのメモリ(VRAM)が足りなくなった時のエラーです。

CUDA(クーダ)は、グラボで計算をするための仕組みの名前です。「out of memory」は「メモリが足りない」という意味なので、全体では「グラボのメモリが足りない」と伝えています。エラーの文章には、「Tried to allocate 〇〇 GiB」のように、あといくつ足りなかったかが書かれていることがあります。数字が小さい時はあと少しの調整で、大きい時は設定を大きく見直す合図です。メッセージの文言は版によって違うので、文章の意味で判断してください。

エラーの文章(例)意味まず試すこと
CUDA out of memory. Tried to allocate …あと少しのメモリが足りないサイズを少し下げる・バッチを 1 に
torch.cuda.OutOfMemoryError同じく VRAM 不足(新しい書き方)同じ対処でよい
CUDA error: out of memory最初の読み込みで足りないほかのアプリを閉じる・再起動する
allocated … already allocated … free使用中と空きの内訳が書かれている再起動して空きを確保する

すぐに試せる直し方は?

効果が出やすい順に、サイズ・バッチ・再起動・拡張機能の順に試します。

メモリ不足のエラーを直す手順

  1. バッチサイズ(一度に作る枚数)を 1 にする
  2. 画像の幅と高さを小さくする(例:縦長なら 512×768 くらいから)
  3. Hires.fix や拡大を使っている時は、倍率を下げるか、いったんオフにする
  4. 使っていない ControlNet・LoRA・拡張機能をオフにする
  5. 画面(WebUI)を終了して起動し直し、使っているメモリを空ける
  6. ほかのアプリ(ブラウザの動画・ゲーム・別の画像ソフト)を閉じる
  7. それでも出る時は、メモリ節約の起動設定を使う
バッチサイズ: 1 / 幅: 512 / 高さ: 768 / Hires.fix: オフ(まず動くことを確かめる)
起動設定の例(AUTOMATIC1111 系の起動引数): --medvram

りんかのコツ

  • 1回目は動いたのに、何枚か作ると出るようになる時は、メモリが少しずつふさがっている。再起動すると戻ることが多い
  • 起動設定の名前は版やツールで違う。使っているツールの説明で確認する

VRAM が少ないパソコンで先に入れておく対策は VRAMが少ないパソコンでStable Diffusionを動かす対策(軽くする設定) →

イラストの利用ルール

出る前に防ぐには?

小さいサイズで作って、気に入った絵だけを大きくする使い方に変えると、エラーが出にくくなります。

最初から大きなサイズで何枚も作ると、メモリの限界に近づきます。まず小さいサイズ・バッチサイズ 1 で構図を探し、良い絵のシード値を固定してから、高解像度化で大きくします。拡張機能は使う時だけオンにし、使い終わったらオフにするのも効果があります。

  • ふだんは小さいサイズ・バッチサイズ 1 で作る
  • ControlNet や追加のLoRAは、必要な時だけ使う
  • 何十枚も作ったら、区切りに画面を再起動する
  • 生成中は、ほかの重いアプリを開かない

直したのにまた出る時は?(よくある失敗と直し方)

原因が1つではない場合があるので、表の順に1つずつ確かめます。

よくある失敗原因直し方
サイズを下げても出るバッチサイズや拡張機能でも使っているバッチを 1 に、使っていない拡張機能をオフに
拡大のところだけ出る高解像度化で VRAM が足りない倍率を下げる・タイル処理を使う・別のアップスケーラーを試す
何枚か作ると出るメモリが少しずつ残るWebUI を再起動する
起動した直後に出る他のアプリが VRAM を使っているブラウザや動画アプリを閉じて、再起動する
軽くしても毎回出るモデルがその VRAM には大きすぎる軽い系統のモデルにする・ブラウザで使えるサービスを検討する

拡大の設定を軽くするには Hires.fix の設定(倍率・ノイズ除去強度・アップスケーラー) →

絵の崩れが出た時の原因さがしは AIイラスト破綻診断ガイド(症状から引ける事典) →

メモリの管理がしやすいツールの画面の見方は Stable Diffusion Forgeの使い方(画面の見方と最初の1枚まで) →

FAQ

よくある質問

CUDA out of memory は故障ですか?

いいえ。グラボの故障ではなく、設定に対してメモリが足りなくなっただけです。サイズやバッチを下げれば、多くの場合で直ります。

再起動すると直るのはなぜですか?

生成を重ねるうちに、使い終わったメモリが完全には空かなくなることがあるためです。画面を終了して起動し直すと、メモリがきれいに空きます。

サイズを下げると絵が悪くなりませんか?

小さいサイズで構図を決め、あとで高解像度化で大きくする方法が一般的です。最初から大きく作るより、軽く試せるので失敗も減ります。

メモリを増やすにはどうすればいいですか?

画像生成で足りないのはグラボの VRAM なので、パソコンの通常のメモリを増やしても直りません。VRAM を増やすにはグラボの交換が必要です。無理な時はブラウザで使えるサービスを検討してください。

RINKA WORLD

読んだあとは、りんかワールドで

MORE

あわせてどうぞ