【入門】GTX 1660ti の限界を調べる【StableDiffusion】
はじめに
先に結論です。設定したやり方では限界に到達しませんでした。。
webUIが発表された当時だと 1660 (6G) では、512x512 解像度でも失敗する事があり、実用的な上限は1024x1024でした。
しかし2024年現在、メモリ管理周りが大きく改善した Stable Diffusion webUI Forge と最新の Nvidia GPU ドライバを利用すると、システムメモリをGPUのディスク・スワップ(仮想メモリ)のようにしてエラー終了を回避し、解像度の高い画像が生成可能になっています。
この記事では、Stable Diffusion webUI Forge を利用して、SDXLモデル juggernautXL_version6Rundiffusion.safetensors の txt2img、img2img の上限を調べようと思います。 (たぶんモデル依存はないと思いますが)
条件
システム
OS:Linux Mint 21.3 x86_64
CPU:Intel i7 6700
GPU:NVIDIA GeForce GTX 1660 Ti(6G)
生成実行
プロンプト&ネガティブ・プロンプト
※ 記事の一番最後(有料)に載せています。SD1.5・SDXL 共に筆者が良く使うプロンプトです。
txt2img
次の解像度で調査しました。すべて問題なく生成できました。
1024x768
1280x968
1440x1088
1600x1208
1920x1448
2048x1544
綺麗に比例しているので、極端な生成時間の低下もありません。つまりGPUメモリが足りなくなって、ディスクスワップのようなものが極端に発生していない事になります。限界はもうすこし先のようですね。
img2img
一般に、最終的な解像度が同じでも、txt2txt よりも img2img の方がメモリを多く使います。
txt2img 1024x768 で生成した画像を入力として、img2img を実行します。プロンプトは同じで、ステップ数も20としています。(※ img2imgのデフォルトでは20よりもかなり少なくなります)
次の解像度で調査しました。
1600x1200
219.3秒で成功
2048x1536
381.2秒で成功
すべて成功してしまいました。。
まとめ
GTX 1660 系はtensorコアのないモデルなので、RTX系に比べると利用メモリ量が増加します。予想ではSDXLモデル1024x1024解像度が上限だと思っていたので、すべて成功してしまった事にびっくりしました。
付録
今回の生成に利用したプロンプトとネガティブ・プロンプトです。
ここから先は
この記事が気に入ったらチップで応援してみませんか?