Stable Diffusion生成時のメモリ消費記録(2)

今回はSDwebui forgeのLCM及びhyper-SDが対象


これは私がパソコンを買い替える時にGPUメモリどれだけ使ったっけとなるより実際に記録していた方がいいと思ったためのメモです
メモリがという記載をよく見るけど実際のメモリ消費量を書いているところが非常に少ないのもメモ書きの動機
使用モデルやvaeなんかの環境によって大幅に変わるため参考程度にしてください

前回書いて以降、4070ではなく4060ti16gbを選んで良かったと強く思いました、それだけメモリ大事
元々のパワーも必要なので4070が16GBだったら文句なかったんですよ、どうしてこうなった

自身の環境
CPU    i7-13700f
メモリ 32GB(DDR4-3200)
GPU  4060ti16gb

立ち上げ前
0.6GB
立ち上げだけ
2.7GB

イラスト生成
何もなし
512×512 2.9-4.2GB
512×768 3-5.4GB
768×512 2.9-3.8GB
768×512 2.9-4GB

SD-LCM
512×512 3.9-4.5GB
512×768 3.9-4.4GB
768×512 3.9-4.8GB
768×768 3.9-5.4GB
※最高値は画像として出力される時になる時があります(ならない時もある)

hyper-SD 12ステップ
LoRA初回&生成サイズ変更時読み込み時? 4.6-5.4GB
512×512 3.8-5.4GB
512×768 3.6-4.6GB
768×512 3.8-4.6GB
768×768 4.0-5.5GB
※最高値は画像として出力される時になる時があります(ならない時もある)

AnimateDiff(module v3_sd15_mm.ckpt)
何もなし
512×512 50.-11.2GB

SD-LCM
フレーム数、レートデフォルト
512×512 4.9-11.2GB
512×768 6.0-10.8GB
768×512 6.0-10.8GB
768×768 7.0-11.1GB
※最高値は生成イラストがGIFとして処理されるタイミングになります

hyper-SD 12ステップ
フレーム数、レートデフォルト
512×512 4.9-11.5GB
512×768 7.3-10.4GB
768×512 7.5-10.5GB
768-768 7.7-11.1GB
※最高値は生成イラストがGIFとして処理されるタイミングになります

イラストも動画も出力物の精巧度によって出力時のメモリ消費量結構変わる気がします
AnimateDiffを使用する場合、hyper-SDが精度高い(主観込み)
似た寄ったりの結果になったので好みでいいと思います
動画を生成したいのならforgeでも最後の処理で8GBを超えてくるのでGPUメモリはよく言われるように12GB以上ですねぇやっぱり
余裕を持たせないなら16GBかなーという印象
ブラウザで動画見ながら裏で出力してると割と12GBだとギリギリいっぱいで動画見ながら他のもの開きながらーとかやる私の環境だとAnimateDiffで12GBは超えてきますので
ちなみに色々開いてやってたりしたので今回の最高値は14.2GB
下に記載したLCM-LoRA読み込み時のメモリになります
マイナスしてある2.1GB分他ので使っていたということですね

おまけのAnimateDiffデフォルト設定生成スピード
512×512
LCM(ステップ10)
LCMとLCM karras共に21.4sec
hyper-SD(ステップ12)
++M2 karras 24.8sec
++M2 SDE SGMUniform 25.0sec
何もなし(ステップ20)
++M2 SDE SGMUniform 39.8sec

それと生成時間も出力物の精巧度によって結構変わりますね

おまけのおまけ
SDXL 1024×1024のみ
LCM(10ステップ) 7.3-10.4GB(※12.1GB) 2.9sec
hyper-SDXL(12ステップ) 7.0-10.0GB 6.0-7.3sec
※おそらくLoRA初回読み込み時のみ

この記事が気に入ったらサポートをしてみませんか?