コメント/Nvidia以外のグラボに関して
Last-modified: 2024-04-25 (木) 11:01:02
Nvidia以外のグラボに関して
- onnxruntime-directmlを使ってAMDのGPU(APU含む)での画像生成を行っています。huggingfaceに掲載されていないモデルを用いるときはdiffusersの変換スクリプトでckpt→diffusers→onnxの二段階の変換を行いますが、モデルによってはエラーが生じるようです。 -- tn?
- (続き)Missing key(s) in state_dict: (ry のエラーが生じるときは、convert_original_stable_diffusion_to_diffusers.pyにある text_model.load_state_dict(text_model_dict)をtext_model.load_state_dict(text_model_dict, strict=False)に変更すればよいようです。 -- tn?
- (続き)VAEを適用するには、ckptにvae(ptファイル)を事前にマージすればいいようです。 --
- (続き)azuritecoin/OnnxDiffusersUIを使用していますが、Inpaintを行おうとするとエラーが生じます。こちらは./virtualenv/Lib/site-packages/diffusers/pipelines/stable-diffusion/pipeline_onnx_stable_diffusion_inpaint_legacy.py内のself.unet(...)[0]の()内をsample=np.array(latent_model_input, dtype=np.float32), timestep=np.array([t], dtype=np.float32), encoder_hidden_states=np.array(text_embeddings, dtype=np.float32)とそれぞれnp.float32に変換してやることで回避できました(txt2imgと共通のモデルを使用する場合はLegacyへのチェックが必須です)。AMDerの同志の方の参考となれば幸いです(終わり) -- tn?
- 追加です。MergeしたモデルをOnnxに変換しようとするとエラーが生じますが、convert_original_stable_diffusion_to_diffusers.pyのcheckpoint = checkpoint["state_dict"]を一時的にコメントアウトすればよいようです(おそらく、mergeの際モデル全体ではなくstate_dictのみを保存しているのかと思います)。通常のモデルと両方使えるようにするには、if "state_dict" in checkpoint: で条件分岐すればよいです。 -- tn?
- RDNA2/3環境はShark Stable DiffusionだとWindows+Vulkanでonnx(DirectML)の10倍早いみたいですね。ただ、WindowsUpdateでRadeonドライバの自動更新を停止させないとバージョン不一致で動かなくなるので注意が必要です。 --
- NMKD Stable Diffusion GUI 1.8.0、ONNXで動かすとRX3600XTよりRyzen5 3600の方が速いw --
- Windows11+RX570 8GBでShark Stable Diffusionを試したところ、512x512、50stepで1分切ってました。お試しならRyzen APU等でも行けると思います。メモリ64~128GB積んでれば高解像度出力も出来そうです。 https://www.youtube.com/watch?v=QpPgfC434C0 --
- pytorch_directmlの230119版でstable diffusionに対応したらしいですが、どなたか動かせた方はいらっしゃいますか…?我が家のRenoir(4750G)では途中で止まってしまいます -- tn?
- Automatic1111も改造すれば動かせるっぽい https://gist.github.com/reid3333/541fab0eb29d4c9558de748ef91a8238 --
- Automatic1111、動いたけどCPUでしか動作してないwどこか間違えたかな? --
- 本家のdevices.pyが更新されてそのままのコード変更じゃだめになって、get_optimal_device()関数内でreturn torch_directml.device()しなきゃいけなくなった。 --
- ありがとう。上の指南書のすぐ下にある、def get_optimal_device(): に指南書のtry: import torch_directml return torch_directml.device() except ImportError as e: return cpuと記述したけどGPU動かない どこ間違えてるんだろう --
- もしやdef get_optimal_device_name():の return torch_directml.device()は削除しないとダメだったりします? --
- 本家の修正に追従するようgist直しました。改造する関数がget_optimal_device()からget_optimal_device_name()に変わってます。最低限のt2iは動作確認できてますが全機能が動くかは分かりません。 --
- RADEON RX6600XT 全くGPUが動作している気配なし どこが悪いんだろう? --
- コマンドプロンプト開いて venv\Scripts\activate.bat 実行した後に python -c "import torch_directml; print(torch_directml.is_available())" を打ってみる。ImportErrorかModuleNotFoundError→torch_directmlがインストールされてないんで pip install torch_directml をやり直す。Falseと出る→なぜかDirectML自体が使えてないので試しにGPUドライバのバージョン上げてみる。Trueと出る→ソースの改造ミスってない限りGPUで動いてるはず。 --
- ありがとう。試してみた。TrueなのにタスクマネージャのGPU使用率0% なんでやねんw --
- 謎い では次はdevices.pyの return torch_directml.device() の真上の行にprint("success!")を追加、return "cpu" の真上の行にprint("error!!")を追加してコマンドプロンプトからwebui-user.batを実行。起動時にerror!!と出たら1111が使うvenvと↑のis_available()打った時に使ったvenvが違う。success!だったらもうお手上げ。どっちも出なかったら改造したソースと実際に実行してるソースが違う。 --
- ありがとう。試してみたら起動しなくなったよ!白旗上げようかな?Traceback (most recent call last): File "E:\stable-diffusion-ui\stable-diffusion-webui\launch.py", line 361, in <module> start() File "E:\stable-diffusion-ui\stable-diffusion-webui\launch.py", line 352, in start import webui File "E:\stable-diffusion-ui\stable-diffusion-webui\webui.py", line 15, in <module> from modules import import_hook, errors, extra_networks, ui_extra_networks_checkpoints File "E:\stable-diffusion-ui\stable-diffusion-webui\modules\ui_extra_networks_checkpoints.py", line 6, in <module> from modules import shared, ui_extra_networks, sd_models File "E:\stable-diffusion-ui\stable-diffusion-webui\modules\shared.py", line 12, in <module> import modules.interrogate File "E:\stable-diffusion-ui\stable-diffusion-webui\modules\interrogate.py", line 15, in <module> from modules import devices, paths, shared, lowvram, modelloader, errors File "E:\stable-diffusion-ui\stable-diffusion-webui\modules\devices.py", line 47 print("success!")SyntaxError: expected 'except' or 'finally' block続行するには何かキーを押してください . . . --
- インデントあっていないとかありませんか…? -- tn?
- ありがとう ちゃんとエラーって出たよ! Launching Web UI with arguments: --precision full --no-halferror!!error!!error!!error!!error!!Warning: caught exception 'Found no NVIDIA driver on your system. Please check that you have an NVIDIA GPU and installed a driver from http://www.nvidia.com/Download/index.aspx', memory monitor disabledNo module 'xformers'. Proceeding without it.error!! --
- わざとインデント無くしたら同じ例外でました。Pythonはインデントに意味があるんで前後の行と揃えてください。でもこのエラー出たってことは動かそうとしてるソースはあってそう。 --
- 入れ違った…たぶんあと一歩なんでがんばって。次は1. webui-user.batを編集。COMMANDLINE_ARGSに--skip-torch-cuda-testを追加し忘れてる。あとVENV_DIRが空になってることを確認。2. stable-diffusion-webui\venvフォルダがあることを再確認。3. コマンドプロンプトを開いてstable-diffusion-webuiフォルダに移動。4. venv\Scripts\activate.bat を実行。5. where pip を実行。stable-diffusion-webui\venv\Scripts\pip.exeの絶対パスが表示されるはず。 6. pip install torch_directml を実行。7. webui-user.bat を実行。 --
- ありがとう やってみた。1:記述してあるのにスキップされない?5:実行後にパスが表示されない どこかで間違えてるんだな --
- なんか良く分からないけどsuccess!と表示されてGPU動作するようになったよ!なんか釈然としない・・・ --
- 1のときにwebui-user.batじゃなくてwebui.batを実行したとか…?それと、PowerShellだとwhereがwhere-objectコマンドレットのエイリアスになってるみたいなのでwhere.exeって拡張子まで指定しないとだめみたいです。それはともかく動作確認おめでとうございます -- tn?
- またGPU動作しなくなった(w 。もう意味が分らない。そして自分の環境だとGPU動作だとimg2imgとか使えないんでCPU動作の方が都合良さそう --
- Radeon RX6800XTでSHARK Stable Diffusion導入したら2秒で1枚画像出るようになった! https://github.com/nod-ai/SHARK --
- リンク先の通りに構築しようとしたら、一番最初でつまずいてる…python -m venv ./virtualenv と実行しようとしたらpythonを開くアプリを選択してくださいと出るだけで何も進まない。インストールする際に変数云々は通したはずなのに、なぜ...? --
- https://koji-genba.hateblo.jp/entry/2023/01/28/200900 このページの通りに構築しても上手くいかないのですが、何かアドバイスいただけないでしょうか。 --
- とっしー加筆ありがとう! テキストの整形どころか画像の添付や埋め込みまでバッチリだよ! --
- ryzen7APUで動作はしたのですが、出力毎に2GB程VRAM(共有メモリ)でメモリリークしてる様で、数回毎に再起動しないと青画面で落ちてしまう --
- SHARKでカスタムモデルがうまく認識してくれないなぁ。7th_anime_v1.1とBasil mixは safetensors ファイル入れるだけでうまくいったのに、、 --
- Sharkは上手く動くモデルと動かないモデルがあるっぽい、OrangeMixとかは普通に動いたけどPrince's Dream Animeはプロンプトによっては全然違う(雰囲気が違う)物が出力されたりした。VAEどうやって適用すればいいか知ってる方居ませんか・・・? --
- たぶんだけど、まだ機能そのものが実装されてないんじゃないかな。 --
- https://koji-genba.hateblo.jp/entry/2023/01/28/200900 こちらの通り環境構築し、RadeonGPUの使用率も上がっていますが、出力結果が下記エラーでモデルを変えても同じ症状です。どなたか解消された方いませんでしょうか?エラーメッセージのオプションはBatファイルに入力済です。NansException(message)modules.devices.NansException: A tensor with all NaNs was produced in Unet. Use --disable-nan-check commandline argument to disable this check. -- 新参?
- 参考:https://youtu.be/E3aUPAXrV_8 (今日見たらgithubの該当ページは動画内容から更に更新されています)Direct-mlを使ったやり方みたいですが今のところwin10&Radeon環境でちゃんと動いています(※trainingはまだ試せていないです) --
- webui-user.batの中に「set COMMANDLINE_ARGS= --autolaunch --theme dark --no-half-vae --no-half --precision full --opt-sub-quad-attention --lowvram --disable-nan-check 」ってのをいれてた、これで黒画面はあまりでなくなって、出ても連続が止まらない仕様にしてたはず、6600xtだから他で出来るかは分からないや --
- ラデでもいけるもんだと思って7900XTX買っちゃったけど、まだROCmがRDNA3をサポートしていないのでbash webui.shでGPUエラーが出てしまう。SHARKなら行ける模様。 --
- 1111互換のDirectMLを使うフォーク版をRX570 8GBで試してみました。webui-user.batを「COMMANDLINE_ARGS=--opt-sub-quad-attention --no-half --medvram」で600x800で出力OK(4分30秒)、モデルはBloodOrangeMix_half.ckptです。 iGPU+RX570環境でVRAMはお絵描き専用、WindowsのGPUで割り当てでPython.exeをRX570に割り当てて使用。 ※「c:\stable-diffusion-webui-directml\venv\Scripts\python.exe」と「C:\Users\ユーザー名\AppData\Local\Programs\Python\Python310\python.exe」 --
- 環境を再構築してRX570 8GBで600x800の28stepsで「MidVRAMのBatch(x1)」と「LowVRAMのBatch(x4)を試してみました。」、結果は・・・「MidVRAM(x1):2分24秒=1枚当たり144秒」、「LowVRAM(x4):8分40秒、1枚当たり130秒」になりました。 --
- MidVRAMのBatch(x1)というのはどこにあるんですか? RX6600XT、ML版で「--opt-sub-quad-attention --no-half --medvram --upcast-sampling」 のオプション付で512x512が45秒でした!速い! --
- azuritecoin/OnnxDiffusersUIを使用して生成中、100%まで行ったのですが"UnicodeEncodeError: 'cp932' codec can't encode character '\u2014' in position 488: illegal multibyte sequence"とUnicodeのエラーが出て進めなくなりました。どなたか解決法ご存じでしょうか --
- DirectML版Automatic1111WebUI Windows10、RX580 8gで使用
COMMANDLINE_ARGS= --medvram --opt-sub-quad-attention --precision full --no-half --always-batch-cond-uncond --disable-nan-check --api --sub-quad-q-chunk-size 512 --sub-quad-kv-chunk-size 512 --sub-quad-chunk-threshold 70
起動してすぐの512x512で30秒未満くらいです。
現状--precision full --no-half --opt-sub-quad-attention、ファンの設定が必須で--no-halfと--upcast-samplingはどちらか一つ、黒画像はでるので--disable-nan-checkあるとお守り代わりにチャンク設定はお好みかつなくてもいいです。
お勧めとしてはhallatoreさんのサンプラーでテスト版DPM++ 2M Karrasの使用、ステップ数を10、もしくは12~16ぐらいで使うと早くていい感じです。
DirectML版Comfyも見かけたので今後が楽しみですね --
- DirectML版Automatic1111WebUI Windows10、RX7900XT(VRAM:20GB)で構築しました。
COMMANDLINE_ARGS= --skip-torch-cuda-test --disable-nan-check --opt-sub-quad-attention --precision full --no-half --no-half-vae --medvram
512x512, 20Step, UniPC, AOM3A1B利用で概ね1枚4~5秒、4.5~5.8it/s。
--medvramは有っても無くても生成速度に有意さはありませんでした。
--opt-sub-quad-attentionはあると劇的に安定しました。ないと長時間稼働させるとVRAMの確保に頻繁に失敗する模様。
--disable-nan-check --precision full --no-half --no-half-vae はモデルやVAEによっては行列演算でコケる事があるので多少の性能を犠牲にお守りで設定。
なおバッチサイズを2以上にしても逆に遅くなるので、大量生成時は素直にバッチカウントを上げた方がよいようです。 --
- M2 Macbook Air 24GBメモリの端末でも動かせますね. メインPCのryzen 7 5800X, RX6800XTよりかは体感5割~6割くらい? でもM2 Macの方はメインメモリとVRAMが共有なので、VRAMが足りなければOSのswapを使い始めるのでVRAM不足で落ちることは少なくなって安定するかも --
- 現在PIPのレポジトリの設定が間違っていてROCm用のPyTorchが入手できません。通常通りにインストールしようとするとCUDA.v11をダウンロードし始めるので注意してください。仮想環境で” pip install torch==1.13.1+rocm5.2 torchvision==0.14.1+rocm5.2 --extra-index-url https://download.pytorch.org/whl/rocm5.2 --upgrade --force-reinstall "で以前のバージョンを入手してください。手動でPyTorch2.0をインストールしている人もいるようですが、動作が不安定らしいのでおすすめはしません。参考 >https://github.com/AUTOMATIC1111/stable-diffusion-webui/issues/9402 --
- アップデートしたら動かなくなった 前のバージョンのハッシュタグ覚えてないし詰んだかな? --
- なんかよくわからんけど
delete venv folder and
Run "pip install torch-directml --upgrade" and try again
で幸せになれるらしい? --
- このリンク先の設定を参考にしたらRX6600TXで1024×768までアプスケできるようになった > https://github.com/lshqqytiger/stable-diffusion-webui-directml/discussions/84 --
- 32GB RAMのAthlon 3050eで遊んでみた、directml版をちゃんと設定すれば1it15秒ぐらいでHelloAsukaベンチ動かせるね。10枚ひとセットに一時間余裕で超えるが楽しいw --
- Intel ArcでAUTOMATIC1111を動かしてる猛者っている? いたらやり方を教えて欲しい 最近A770が気になりだしてるんだ --
- directml版なら動くんじゃない?、純正はcudaかcpuの筈。
--
- Arc向けにipexを使ったフォークがあるみたい? -- tn?
- TwitterにArcA750で動かしてた人いたよ 3060程度の速度らしい --
- rocmがwindowsに来れば多少は早くなるのかしら --
- directmlがtorch2.0に対応していたので試してみました
Radeon780M(iGPU)環境でmedvramが不要になり、10%ほど高速化
--opt-sdp-attentionオプションがつかえるようになりましたが、
これは--opt-sub-quad-attentionオプションと大差ないように感じます。
引き続き検証中... --
- ishqqtigerがpytorch2.0対応したようで、VRAM効率が前バージョンより改善してるみたいなのがこちらでも確認、少なくとも一回り上サイズが扱えるようになってる。
解説では1111にも導入済みとあるがこっちはdirectml版はgit cloneのみでは使えないっぽい… --
- directml版も更新されてちゃんと使えるよん。一度セットアップ中に怒られて止まるけどもっかい起動すればいけた。(python3.10.10) --
- 既出でしたらすみません。linuxにて7900XTXでAUTOMATIC1111が動かせた人がいました。コンパイルに60GB程度のメモリが必要ですが、自分の環境でも動かせるようになりました。https://github.com/AUTOMATIC1111/stable-diffusion-webui/discussions/9591 --
- DirectML版が悲しいほどに遅すぎたのでここのレクチャーに従ってUbuntu 22.04.2 LTSにROCm版の導入に成功。速度は大体2倍強に。
GPUはAMD® Radeon vii(GFX906 60kdb)。
導入から初回立ち上げまでやり方一切修正なしでした。
TCMallocとMIOpen kernels packageがないぞって出てくるのでそれぞれ下記URLから合うものを入れたら無事普通に動作。
>https://packages.ubuntu.com/search?keywords=google-perftools
>https://github.com/ROCmSoftwarePlatform/MIOpen
あ、ちなみにWindowsだと2回目以降の起動はwebui-user.batだけどLinuxは2回目以降もwebui.shで起動なので注意(webui-user.shに起動オプションとか必要なものだけコメントアウトから外す、webui.shを叩くとそこからwebui-user.shが呼ばれる仕組み) --
- TCMallocについてはlibgoogle-perftools-devをインストールするだけでOK。
だがMIOpenは俺の環境(RX 5500 XT)だとパッケージ自体(gfx1030 11kdb)が存在せずダメだった。 --
- 1111が正式にtorch2.0移行したのでdirectml版も再構築をお勧め。ROCmはWindows対応かWSL2上で使えるようになってからが本番かな。Vulkan版SDもあるけど難易度高め --
- TencentのNCNN、IntelのOpenVINO、Googleがonnxだったかな?、MicrosoftのDirectMLも含め各社色々とアクセル方法を提案してSD上にお試し環境ができてるね。
NCNNなんかスマホで4s/it謳ってて面白かった。 --
- Windows対応といわれているROCm5.6のマイルストーンが100%になったと話題になってますね。リリースが近そうです。カードの値段も今ならお得? --
- windows radeom環境でwebUI版使ってるけど、lora作成とかマージとかできなさそうかね。いろいろ試してるけどなかなか動かない。少なくともtrain toolsはだめっぽい --
- このサイトの指示どおりにやってますがbash webui.shを打ってから1回目python3.10が停止したというポップアップが、2回目は「Traceback (most recent call last): File "/home/lunyaa/stable-diffusion-webui/launch.py", line 352, in <module> prepare_environment() File "/home/lunyaa/stable-diffusion-webui/launch.py", line 257, in prepare_environment run_python("import torch; assert torch.cuda.is_available(), 'Torch is not able to use GPU; add --skip-torch-cuda-test to COMMANDLINE_ARGS variable to disable this check'") File "/home/lunyaa/stable-diffusion-webui/launch.py", line 120, in run_python return run(f'"{python}" -c "{code}"', desc, errdesc) File "/home/lunyaa/stable-diffusion-webui/launch.py", line 96, in run raise RuntimeError(message)RuntimeError: Error running command.Command: "/home/lunyaa/stable-diffusion-webui/venv/bin/python3" -c "import torch; assert torch.cuda.is_available(), 'Torch is not able to use GPU; add --skip-torch-cuda-test to COMMANDLINE_ARGS variable to disable this check'"Error code: 134stdout: <empty>stderr: "hipErrorNoBinaryForGpu: Unable to find code object for all current devices!"Aborted (core dumped)」となり目的の動作にならない。Ryzen 9 5900XとRX6650XTです。 --
- RAM32GB スワップ107GBです --
- エラーメッセージを機械翻訳にかけて読んでくれ、そうすれば何かわかるかもね。 --
- ROCm(HIP)が動いてないっぽいすけど
1回目にpythonが停止(なんで…?)しているのも気になる
とりあえずstable-diffusion-webuiディレクトリを削除してgit cloneからやり直してみたらどうだろう? --
- COMMANDLINE_ARGSに--skip-torch-cuda-testを追加してCUDAチェックを無効化しろって書いてあるけど? --
- radeonも持ってるからdirectml版でやってみようと思ったけどtorch-directmlに適合するバージョンがないとか赤文字で出てきてだめだったわ 大人しくrtxの方使います --
- directml系で別枝ができてます、ちょっと癖はあるけどAMDで動くのは確認。
https://github.com/vladmandic/automatic --
- Tiled Diffusionでアップスケーリングすると画像の1/4が形成されない
コンクリートブロックの様なイラストが出来上がる。なんだこれ --
- Shark(737)、Memory ErrorやVGA固有のエラーによってコンパイルで詰まっていたが「仮想メモリを山盛りにする」ことで解決した。仮想メモリを自動割り当てからCドライブ32767-65536MBに設定して再起動して走らせるだけ。スイッチやclear-allは必要なかった @ RX6700XT12GB・メモリ32GB・Win11(64bit) --
- SHARK使おうと思ったら
shark_tank local cache is located at C:\Users\(ユーザー名)\.local/shark_tank/ . You may change this by setting the --local_tank_cache= flag vulkan devices are available. って表示されて一向に先に進めないわ exe実行じゃなくてgit cloneして実行しても同じ結果
amderでshark使えている人いたら何卒…rx6700xt・win11・shark20230423.700・adrenaline23.4.3 --
- 必要なtorchファイルのダウンロードやsaftytensor, ckptファイルのbin形式?変換が終わるまで結構時間が掛かるし表記が遅れてるときもしばしばある、三十分くらい様子見してみては?
と言ってもこちらは黒一色以外生成できてないけど。NaNエラーかなあ、どうやれば回避できるのか… --
- vulcan devices~の表示が出たあとpowershellのコマンド打つ状態に戻る(=shark自体が終了する)から待つ以前の問題なんだよな どうしたものか --
- RyzenG機でのSHARKによる作成成功、仮想メモリ定義に加えてPowershellで"$env:AMD_ENABLE_LLPC=1"と環境変数を加えてからSHARK立ち上げで最大768x768での描画が出ました。lora学習タブ(実験的)が使えるかどうか後で試してみます。 --
- こちらだと"vulkan devices 0-0000-~ Vega11"みたいな表記の後コンソール内ダウンロードバーとかUIウィンドウとかが出て、その後待たされてからの生成受け付けだったので、デバイス認識で転けてる?、ドライバをあちら指定の23.2.1にしてみるとか?
ちなみに仮想メモリ触らなくてもここやmodel選択は普通にできてたが生成ボタンでブルースクリーンだったのが仮想メモリ設定で黒一色生成まで進むようになった。 --
- 解決 DDU使ってグラフィックドライバアンインストール→再インストールで正常に認識されるようになりました
バージョンは23.4.3で大丈夫でした --
- 発表はまだだけどROCm5.5のLinuxドライバが出てるそう、使ってる人は検証してくれると嬉しい。
Ubuntu22.04向けhttps://repo.radeon.com/amdgpu-install/5.5/ubuntu/jammy/amdgpu-install_5.5.50500-1_all.deb --
- ここにきてMicrosoftがOlive(ONNX live)を使ってDirectMLで最適化させるニュースが出てきてるね
https://devblogs.microsoft.com/directx/dml-stable-diffusion/
https://github.com/microsoft/Olive/tree/main/examples/directml/stable_diffusion
AMDもRADEON向けに来月ドライバ出す予定みたいでどうなるのか楽しみ --
- ONNXはNMKDではモデルの変換が必要だったけど、こいつはどうなるんだろう。Cuda並みの速度が出るならともかく、そうでない場合はちょっとなあ。 --
- RDNA3しかolive最適化ドライバ出さんで~みたいなこと書いてあった気がするけどそれが本当なら悲しい --
- 2月から1日30分くらいのAIお絵描きでグラボが逝った。こんな短時間じゃAIお絵描き関係ないよね? --
- 24時間ぶっ続けでマイニングする人もいたことを考えるとそんな程度の負荷で壊れることは考えにくいけどな --
- MIOpenでカーネルが見つからないから速度遅くなるよ系のエラーはlibstdc++-12-devってライブラリ入れると解決するかも --
- 7900でStableDiffusion-1.5Oliveの性能が倍を謳う新ドライバ配布開始。マジだったら良いな、他ハードにも恩恵あったら良いな…
https://www.amd.com/en/support/kb/release-notes/rn-rad-win-23-5-2 --
- RX570で新ドライバ試してみたけど20%くらいは速くなったかな?悪くないかも --
- RX7900XTアスカベンチマーク1m23.04sCOMMANDLINE_ARGS= --skip-torch-cuda-test --disable-nan-check --opt-sub-quad-attention --precision full --no-half --no-half-vae --medvram --autolaunch --
- 1枚出すのにざっくり30秒かかってたのが20秒くらいには縮まった。 --
- APUのvegaで既存のwebui-directmlでは不変~一桁%アップかな、ほぼ差なし。 --
- TokenMergeはDirectML系としあきにはかなりの救い、互換性低い(OffとOn、各数値間で違う絵になる…がもともとDMLはCUDA&ROCmと違う)のと引き換えにxFormersなみにvram節約してくれるみたい。prompt→Token→Diffusionと変換してるTokenの段階でどれぐらい大目に見てTokenを減らすかて方法なんで節約ぶん速度も上がる。
TMなしだと768x512より上が厳しかった低スペックPCでTM 0.5で1280x1024が出せるから画素数で三倍超える、automatic1111 ver1.3.0相当(多分今週ぐらいからDirectML版にも入ったと思う)でSettings→OptimizationsのTokenMerge三項目で変更可。使い分けは詳しい人頼む… --
- TokenMergeを使うと黒画像になってしまうのですが、他に何か設定が必要でしょうか? --
- 新規クローンにこれまでの設定をそのまま持って行ってTM入れてで問題なく動いた。メモリ圧縮がARGUMENTでなくSettings→Systemで選べるようになってるけどこれが標準では自動になってるみたいだからそこが悪さしてるかも?、それまでの自分の環境(俺はsdp使ってた、安心設定はsplitらしい)を明示したほうがいいかも。 --
- opt-sub-quad-attentionと相性が悪いようで、--opt-split-attentionに変更したら正常に画像が生成できるようになりました。 --
- スルーしてたけど、これ設定したらものすごく安定度が上がった。これまでは時々メモリ不足エラーや黒画像が出てたけど、まったく出なくなった。速度も3割くらい早くなった。同一画像は出ないようになったが、比較しないと分からん程度だな。 --
- Radeon 5700 XTでStable Diffusion動いて感動してFluid MotionのためにとわざわざRyzen 7 5700G使ってるの思い出してメモリ16G割り当ててそっち向けて試したよ。速度はともかく動いたよ。 --
- rocm5.6まで待ってみたけどこれでダメだったらradeonでaiは諦めるわ 期待を裏切らんでおくれよAMD --
- (要WSL または ネイティブLinux環境)vladmandic氏開発の改造版WebUIなら、Intel Arcでも動くみたいだ
https://www.technopat.net/sosyal/konu/using-stable-diffusion-webui-with-intel-arc-gpus.2593077/ --
- Intelので思いついて試してみたら、KabyLake m3-7y30単体(おそらく対応最低ライン)でもDirectML版動くようになってるね、メモリ対策マシマシ必須だけどw
8GB(ディスプレイアダプタのプロパティではVRAM 128MBと出る)、起動で--lowvram --upcast-sampling、設定のoptimizationsでsdpもTokenMerge 0.3も入れれば、384x384上限、30s/itとCPUよりはまし程度だけど絵が出る。 --
- 例のグラボ+ROCm+Ubuntu 20.04で動いたよ。ただUbuntuでRX500を動かすのは相当しんどい。RX500対応のpytorchが用意されているArch Linuxでやるのがよさげ。>https://github.com/AUTOMATIC1111/stable-diffusion-webui/issues/4870 --
- SandyBridgeのPCが壊れて12年ぶりにCPUを新調したのでTorchのインストールいけるなと思ってRX570/ROCm/Ubuntu22.04でやってみたけど、速い順に directml版 commit hash f64ad253 > ROCm baf6946 > directml 版 baf6946 という感じだった。 しかし何らかのバグがあるのか ROCm の方はしばらく回してたらディスプレイドライバが死んで難儀した。しかし公式にはサポートされてないしな。結局、この機会に Geforce 買うかさらに迷ってる。 --
- lshqqytigerがLoRA学習対応に手をつけている模様、今週のアプデでまだマージすら上手く行かないと言及してる。
これまでの経緯的に長期的にはvladmandicやAUTOMATIC1111にも取り込まれるだろうから期待している。 --
- SHARKが先週786に更新されてる、上の仮想メモリ割当てでもうまく行かなかった人とかが試して見る価値はあるのでは。機能はあまり追加されてないがモデルマネージャは載ったみたい。 --
- ROCmで今年秋にRDNA3からwindows対応するってAMDがツイートしたそうだが、確認取れる人いる? --
- TokenMerge使っても6800+directmlでt2iフルHD出力無理なんか…ゴリゴリに.bat弄ったほうがマシやないか…qチャンク 512以外に出力解像度上げる方法ないとかやっぱつれーわ --
- やり方間違ってたっぽいわ…DirectML版導入しなおしたらOptimizationに設定出てきた。多分ここで話題に出たのは拡張でなくこっちだと思うが、上にもあった通りsub-quad使ってると黒画像になるな。その上のネガティブガイダンスが有用だったから良しとする --
- なんかwiki荒らされとるやん 情報収集したい人間からすれば迷惑ったらありゃしない --
- EasyNegativeを有効にするとまともに生成できない、img2imgのinpaintでControlNetのcanny使って線画を修正しても生成途中に元画像に戻ってしまうのはまだしょうがないのでしょうか? -- すずき?
- inpaintは--no-half-vaeが必要、てのがlshqqytigerのところで指摘されてるが、それ試してみた?
俺の環境ではEasyNegativeとtxt2img、EasyNegativeとimg2img&controlnetともに異常なしに見えるが。(inpaintは使ってない --
- no-half-vaeを書き込んで、数回出来たけど再起動かけたらできるような、できないような感じに。EasyNegativeはCPUのみにするとまともに生成できるけど、GPU使うと途中でおかしくなる。(グラボは6700XT) -- すずき?
- precision full --no-half入れたら、EasyNegativeも普通に動きました。ありがとうございます。 -- すずき?
- #1.4.0 以前の版で、Ryzen2400G(vega11[gfx904]/RadeonDRV:23.7.1(WHQL)) にて、512x768、1step:3-9sec前後、1枚:4min前後で生成できていた。6月末か7月最初のUPDATEにより、512x512でもメモリリークで止まる(MainMemory64GB、VRAM割り当て16GB、GPU割り当て全体40GB)、完走しても大粒のモザイク画、色味もおかしい(緑や黒を主体としたグチャとした何か)、1step:20sec以上、1枚:12min以上、LyCOSエラー、という状況で改善しない。vega11でそれなりの早さで生成していた頃に戻りたい。「vladmandic」 SDNextを試してみるとCPUながら1枚:14分前後で動くしLoRA等も動くのでびっくり。 -- 辺境のとしあき?
- 記載漏れのため追記、
stable-diffusion-webui-directmlを利用、--autolaunch --opt-sdp-attention --opt-sdp-no-mem-attention、の3つを起動OPTに記入、512x768の20stepを1枚4分程度で生成@1.4.0以前。vladmandic_SDNext は、512x768で16stepで1枚14分前後です。内蔵GPUでメモリ拡大できるから画像サイズの大きいものを作ってみようと思っていたのにUPDATE後の遅い動作や不具合等が悲しい。 -- 辺境のとしあき?
- SDNextはDirectML使えるよ、webui.bat --use-directmlで起動させると認識して以降はそっち使用になる筈。
lshqqytigerのは作れないまで悪化したことはないが1.4.0で仕様が変わったっぽいのは感じる、俺はwebui-user.batのARGUMENTに--precision autocast --upcast-sampling加えてfp16だのfp32だのが自動で調節されるようにしたら以前っぽく戻った。
txt2imgは512x512標準なんで大サイズは最初の生成でなく拡大側でやれとよく書かれてるし、既出のControlNetのTileとUltimateSDUpscaleのコンビだとVRAM制限に引っ掛からず4kまで問題なく出力できそう、現状SDNextが使えるならそれをDirectMLで動かしてこっちを試してみては? --
- 辺境です。ご助言ありがとうございました、報告です。lshqqytiger#1.4.1の2回目のアプデでvega復活しました。以前とは少し違うようですが概ね良好です。そしてvladmandic@SDNextですが、見よう見まねで.bat作りtorch無いよとか怒られながら[Issue]#1047を参考にし起動に漕ぎ着けました。おお!こんな貴重な情報を頂きありがたいばかり。生成も多少早いです。そしてSDXL?動きました。--backend diffusers のヤツです。これ後からSettingsで元SDに切替もできるんですねぇ。ここでアドバイスを頂けるとは思っておらず返信遅くなりごめんなさい。お礼と感謝を込めて。 --
- 6/28にROCm 5.6がリリースされたが…
残念なことにWindowsはサポートされなかったよ
サポートしているOSのリスト
https://rocm.docs.amd.com/en/latest/release/gpu_os_support.html --
- なので7900XTXを買った自分はUbuntuにROCm5.6をインストールしてさっさと環境を揃えてしまった
ここのWikiを参考にkohya-ss式のLoRA学習もできるようになったし後は存分に楽しむことにするよ --
- 自分もRadeon RX7900XTとかでRHEL9.2で環境作りました。ubuntuよりもRHELのがいろいろ楽じゃない? --
- ROCm 5.5.1でWindowsサポート開始だと…?
まだ開発向けSDKしかダウンロード開始してないみたい、ユーザ向けランタイムキットは見当たらないが、RDNA2&3がサポート対象に名を連ねてる。
https://rocm.docs.amd.com/en/docs-5.5.1/release/windows_support.html --
- lshqqytiger版がちょっとpullでトラブっているようなので解消まで待機を。
directml版で使えるVRAMモニタ導入絡みみたい、it性能が落ちるtorch版とメモリ浪費なAMDドライバ版が使えるようになる予定だったのに… --
- Settings に Optimizations→DirectML memory stats provider が増えて、これがNone 以外だとエラーになるみたい。Windowsでdevice_idを設定している場合とか。ちょっとハマったので、メモを残しておきます --
- oliveを用いてconda環境で1111を実行する手順がAMDから出てるみたいだね。見た感じ4070ti位の速度出てるけどrocm使ってないみたいだしwindowsでもできるのかな? --
- 1111のdirectML版は前からOliveにも暫定対応している。Winでも動くはずなのだが、うちでは動かないので放置している。そのうち対応してくれるんじゃないの --
- rx6800使ってるがうちもあの手順の通りやっても動かんわ。試しに最適化前のファイル使ったらCPUで動いた --
- 今回発表された奴、現時点ではHuggingfaceから落とせる特定のモデルだけ変換に成功するという話だ。本当なら実用性は皆無と思われる。 --
- 一応やってみたけど6700XTで512x512 28step*10で140秒から120秒と速くはなってるけどVAEやControlNet Checkpoint Lora等既存のものが使えないのが痛いね --
- ここ数日のアップデートで、うちでも --olive が動くようになりました。
win11+RX580。
確かにちょっと速くなったけど、モデルの変換が大変なので、常用するにはちょっと。。。 --
- SDNext(vladmandicフォーク)でパイプライン本格対応がきた模様、XLベース+1.5ControlNetとか1.5hires.fixとか、逆の1.5ベース+XLrefineとかが可能に。 --
- ROCm 5.7、Linux向けに公開。win向けとは別なながれになってる。
RDNA3は6.0まで最適化しないのではとか言われてるのも含め、先が長い… --
- AMD adrenaline 23.9.3配布開始、RDNA3でSD高速化とlshqqytigerのとこで話が出てる。>MeanVarianceNormalization (MVN) and Stable Diffusion variants optimizations
多くはないと思うが該当する人は試してみては、ちなみに俺はVegaで高速化の恩恵なし。 --
- 8月にIntel ARC SD.nextでWindowsネイティブ動作が可能になった。ただし動的コンパイル時間が起動時10~20分→9月最終週にdev版に事前コンパイル版ライブラリ導入、インストールも簡単に>https://github.com/vladmandic/automatic/discussions/2023なお画質が少し落ちてる気もする… --
- 10/13頃に上記discussions内容とdev版が更新されてIntel ARCドライバ、git、Python入ってればリポジトリクローンしてwebui.bat --use-ipexするだけになった --
- SD.Nextの開発メンバーが「Intel Arc環境ではDiffusers backendを使うとVRAM消費が減る」と言ってるんだけど、Diffusersの使い方を詳しく解説してるサイトが全然ないし、使えるサンプラーも通常時とまるで違うし、正直使いにくい。 --
- 最近の出来事にも書いたけどkohya_ss sd-scripts にIntel ARC 対応が追加。SD next ARC WSL 版が入ってたら楽に導入出来る。sdxlブランチ時点の記事ですが参考にどうぞ>https://tomokz.hateblo.jp/entry/2023/09/27/090259 --
- FooocusがDirectML対応、2.1.60からかな?
https://github.com/lllyasviel/Fooocus --
- AMD adrenaline 23.11.1公開、navi2以降でのDirectML高速化だと。該当する人は試してみてもいいかも。 --
- 体感的に早くなった気がする。いいね。 --
- vegaでは変化なし~微遅ぐらいだが、安定性は上がった気がする。でも正直、ROCm環境に移れるならそっちのほうが絶対楽、倍の違いが出る。手持ちのミニPCで試してみたら4800Uは使えたが2400Gは㍉だった、Zen2以降はAPUでも対応してるのかな。 --
- qDiffusion https://github.com/arenasys/qDiffusion てのを試してみました。これなかなかいい感じですね今後にも期待できそうです。メモリ管理も優秀な感じで HiRES 3倍にしても溢れない(OOMしない) のがステキ。Rocm も使えるらしいので Vega 環境からアップグレードしてみようかなと思うくらいです。 -- 辺境の-?
- Adrenalin Edition 23.12.1 来ましたけど、前回以上に速くないですかね。自分のRX6600(VRAM8G)において、23.11.1では512×512画像一枚出すのに1分弱から50秒前後にはなったかなあ…ぐらいだったのに、12月分に更新したら12~16秒に縮まりましたよ。ただVRAM少ないからか、数枚hiresかけて出力したらもうエラーで止まる不安定さはあまり変わらんのですが… --
- 同じくRX6600ですがステップ数16で10秒前後と以前と変わらないです。コマンドプロンプトに 1.50it/s (左の数値は平均)と表示されていますね。 --
- ROCm 6.0公開、Windowsも久々に対応してるみたいだがどこまで使えるか…。
https://rocm.docs.amd.com/en/latest/ --
- youtubeにDirectMLとROCmの速度比較をしてるやつがあがってたけど、ROCmで早くなるっていってもあんなもんなん? --
- DirectML版とROCm版を比較する主旨の動画で、処理時間が約1/3になった。という内容だね。
俺は(DirectML版に比べて)顕著な差で、大したものだと思ったよ。 --
- そっか・・・。動画内でも言ってたけど、確かに1/3はすごいけど参考サイトのスコアと比べて全然NVIDIAに負けてるじゃんと思ってね。正直1枚生成あたり2,3秒くらいまで短縮されるくらいに期待を持ってたので、ダメとは言わないけどちょっと拍子抜け+動画の人の環境や設定に不備があるんじゃないかと思ってたよ。 --
- 6600XTだっけ?、一枚六秒はワットパフォーマンス的にはNVIDIAとタメぐらいだと思うが。
同世代だと3060相当、消費電力が130Wの32cu構成と3060より小ぶりにまとめててのあのスペックというのは発売当時も注目を集めてた。 --
- 最新版なんか変わったっぽいね。git pull したら「--skip-torch-cuda-test」っての付けないと手元だと起動しなくなっちゃった。 --
- vladmandicのが新年バージョンでMac対応謳ってる、--debug起動で使えると。うちの古いintel mac環境では起動はするが作成はhalfはエラー、no-halfは起動すらしないが、他のMac民も試す価値はあるかも。 --
- 対応のmacOSが既にPython入ってるからとバージョン確認するの忘れてた、3.11だとエラー出しまくるわな…
ちゃんと3.10入れて指定のvenv作るだけでmps稼働、cpuの三倍速になったよ!なんと20s/itだよ!!w
第三世代IntelのSandyおじさん単独でもこのmpsで使えなくはない、のかなあ…? --
- ミスった、第三世代はIvybridgeじゃん…
ちょっと面白いのは単体だからDDR3-DRAMだろうこと、学習向けに大量のVRAMが必要と思ってたがDRAMで代替の目があるのか? --
- 外付けディスク起動でちょっとdGPU付きMacBookProで試させてもらったがdGPUでの改善は小さいな、1.5で一割アップのXLでは差なし。DRAMで全部やるためここがボトルネックになってそう、世代間よりDRAMの性能差が物を言いそう。16GBでは768x768はスワップで止まって復帰しなかった、512x768なら60s/itで完走する。週明けに時間の余裕があれば32GBに交換して上を狙うのと学習に使えないかを試したいが… --
- メモリスロット二つで既に空き無し、増設不能でした。それだけじゃ何なのでopenVINOも動くよ、ておまけを。
SDNextは今回のアップデートでいくつかのdiffusers系を使えるようにしてて、openVINOも--use-openvinoで入る。ただしランタイムが足りないようでエラーを吐くので、例えばwindows環境ならvenvをScripts/activateしたらpip install openvino-devで足してやると、Ivybridge単独でも動く。macOSのmps同様DRAM動作、そっちの帯域で性能が制約かかるのは変わらないみたいだが、samplerも使えるのと使えないのがあったり微妙にmpsより面倒で匙を投げた。 --
- AMDの4000-5000番台のAPUだけどVRAM設定できないので使えないって人に朗報、USB起動でBIOS設定を多少拡張できるツールがある。
https://github.com/DavidS95/Smokeless_UMAF
起動に癖があるのでちゃんとページにあるような拡張設定画面に行けるのに起動ドライブとして指定した上でオフからの起動とか必要っぽいが、俺はNECノートで16GB VRAM設定できた。 --
- 手持ちにないので確認はできないが、2000-3000番台でも大丈夫かも、Readmeで使えない旨が書かれているのは6000番で多分7000番も㍉だけど。
ZenコアのAPUはROCmが使えないから2000-3000番台はDirectMLとかSharkでやることになるかな。 --
- 【Ubuntu日和】【第42回】RadeonだってStable Diffusionは高速だ。そう、Ubuntuならね - PC Watch
6600XT(DirectML/ROCm)と3060の速度比較あり。 --
- 7900XTXで動かすstable diffusion、UbuntuとWindowsでは生成速度に差はあるのかな?比べた人いる? -- Rya?
- ごめん。7900XTXのUbuntuと4090のWindowsの差です。 -- Rya?
- いるよ。ちもろぐちゃんの計測内容に7900XTX(Ubuntu環境)と4090(Windows環境)が含まれてる。しかも2024/2/9に再計測されたばかり。
【Stable Diffusion】AIイラストにおすすめなグラボをガチで検証【GPU別の生成速度】 | ちもろぐ --
- アスカベンチや神里綾華ベンチで比較してくれてるちもろぐのところがforge追加で更新されてて、そこでは4090が倍強(処理が重くなるほど更に拡大)で圧勝してる。
vladmandicのSDnextもベンチマーク機能があって色々と数字が上がってるが直接比較できるようにはなってないが、似た憶測ができるような内容だし。(Olive特化したモデルでのスコアでxtxが4090の半分 --
- 最近ページではNvidiaの40SUPER発表だが、AMDもその裏でrx7600xt発表してるな、VRAM16GBに増量以外は変化なしというのはどう取るべきか… --
- Rocm6.0対応ナシの現状じゃ俎上にすら上げられねえ。兎にも角にもRocmの対応グラボ広げてもろて --
- ROCmでRX7600が動くならNavi33のままだからRX7600XTも動くはず 自分のはRDNA2でRDNA3は追ってないからROCm6.0まででNAVI33がgfx_version書き換えで動くのかわからんけど --
- 最近のRyzenによくついてるRadeon 780Mやけど多分インストールできたらここに書いてある手順でrocm動きそうな事書いてあったんで貼っつけとくわ、スレの内容はllamacppについてやけどhttps://github.com/ROCm/ROCm/discussions/2631 --
- 環境:ryzen3950X radeon6900XT
SD.Nextをインストールしたらバッチ起動時にUsing CPU-only Torchが表示されて、何やってもCPUしか使われなくなってしまいました。
どうしたらGPU使ってもらえますか? --
- --use-rocmを明示しても?まあこっちでもなんか妙な表記にはなって設定と別な処理な感じがあるが、--no-halfを強制されてる表記になってる… --
- あれ、--use-rocmがハイフン二つ省略されてる?文頭にハイフン二つ書けないのか? --
- wikiwikiの仕様でして。行頭をハイフン1~3個で始めると、リスト構文として扱われます。悪しからず。
というわけで少し編集させていただきました。 -- 編集者?
- 返信ありがとうございます!
休みいっぱい使ってあらゆるSD試したけど、全部rocmやdev/kfdが見つからなかったりして失敗してしまいます。
このPCは入れ直さないともう詰んでるのかな…… --
- rocminfoにGPUが表示されるかからだね、されないならROCmインストールに失敗している。 --
- forgeってintel arcで使えるのか? --
- 知らんけど、directmlのオプションは付けられるのでもしかしたら動くかもね --
- arcは持ってないから分からないけど、cudaからipexに変えられれば動きそうな気がするような…? -- tn?
- DirectMLがIntel NPUベータ対応開始。CoreUltraだけ名前を出してるが、OpenVINOではモバイル十世代のIcelakeから入っている前世代NPUに対応してるから、こっそり対応してくれてないかと期待してる。 --
- cuda発AMD向けライブラリzludaがwindowsでもcudaネイティブアプリでも使えるかもって話題になってる。現状SD.nextと6700xtで試行錯誤している模様。
https://github.com/lshqqytiger/stable-diffusion-webui-directml/discussions/385 --
- 7900XTでは成功者がすでにいる。780M(iGPU)だと何をやっても灰色一色の画像が生成されてダメだ。参考にしたのはそこで提示されてるSD.Nextでの手順 https://github.com/vladmandic/automatic/wiki/ZLUDA --
- tiger氏のところで「Discordのを使ってね」とあるが確認してみた?、あとはコンパイルできてるかどうかかな、780mはプレコンパイル済ではなくGFX上書きで他のプレコンパイル持ってきても動かなさげ --
- 780M環境だと、rocBlasフォルダ以下のGFX定義ファイルは1103.dat, 1130.datを1100.datからコピーしないとFileNotFoundで動かない。コピー後だと初回のコンパイルは20分ちょっと掛かって完了してる。その後の画像生成が何をやっても灰色一色の画像しかできない状況。いま、一旦全て削除してrocBlasをkoboldcpp-rocmのファイルに置き換える方法を検証中だが、初回コンパイルが発生しなくて困ってる。ダメだこりゃ --
- その人のフォーク版Zludaとv1.7.0で6800使ってCUDAで生成は通った。最近流行りのForgeも行けるかと試したがTorchのバージョン変えても無理。まあそんなうまい話は無いよな… --
- forge、まだ未熟だから…
Macも使えるんだが、automatic1111を使える環境からでないとMPSになってくれない、全cpuなままなのもその一例かと。 --
- ZLUDA v3.5+7900XTXでこんな感じでforge動いたよ
animagineXLV3でBatch100で実行して最後までエラーにはならなかったのでそれなりに安定してると思う
パス通すのと環境変数はSD.NEXTと一緒なので省略
forgeのwebui.batを実行して起動、起動後即終了
torchとtorchvisionを入れ直す
.\venv\Scripts\activate
pip uninstall torch torchvision -y
pip install torch==2.2.0 torchvision --index-url https://download.pytorch.org/whl/cu118
venv\Lib\site-packages\torch\libにzludaのcublas64_11.dll、cusparse64_11.dll、nvrtc64_112_0.dllを上書き
modules\initialize.pyの
import torchの下に以下を追加
torch.backends.cudnn.enabled = False
torch.backends.cuda.enable_flash_sdp(False)
torch.backends.cuda.enable_math_sdp(True)
torch.backends.cuda.enable_mem_efficient_sdp(False) --
- 葉2でとりあえずForgeでも生成通るようになったわ助かる。でもこれ無印とあんま差ないのな… -- 枝?
- 実はもうRX6900XTでもzludaでsdできたりする?ツクールがubuntuじゃ動かないからはよwinに戻りたい…… --
- 7900xtxでSD.Next使って試してみたらMLの3倍速程度の数値出て驚いた。 でも、Linuxと比べると速度も安定性も下がるかな? 自分の環境だとグラボのドライバとまったりでSDXL使えないのが残念。 SD1.5ならControlNetもLoraも動くけど安定性選ぶならまだMLだと思う。 wikiの手順に無いけどtigerさん言ってる通りcuDNN使わないようにしないとエラーでたんで気を付けて --
- 色々と更新されてたので再度試したら手軽になってた上、SDXLも安定してて(wikiのSDXLの項目も必読)良くなっていた。これでWinで“RX7900XTXですらRTX3050より遅い”と言うことはなくなったか?
使ってて起きた問題はdiffusers専用になる事でのエラーが多い(backendをoriginalに1度でも変更すると遅くなる)。体感的に速度はLinuxを10とするとZludaは6、MLは1-2位かな --
- Athlon 3050e、vega3なAPUでSD.next+zluda試したら動くは動くね、まだ安定させられないというか本来の挙動でないっぽいが。
VRAM設定可能なAPU、GCN系GPU(RX400番台からvegaまで)持ってるならwindows+zludaに挑戦はありかも。 --
- あの後確認してみたら、昔インストールしてたOpenVINOの動作がzluda関連メッセージと混ざってただけで、クリーンインストールしてみたら動かないままだった、残念…
MI100向けのGFX906を読もうとはしてるっぽいんだけどAthlon3050eの902xnackとは微妙に違って蹴られてるみたい。 --
- intel A730MでSD.NEXT入れようと思ったのですが、インストール途中でWarningと赤文字でWARNING Package version mismatch: numpy 1.26.4 required 1.26.2ERROR Reading failed: ui-config.json [Errno 2] No such file or directory: 'ui-config.json'という3つのエラーと警告の文章がまばらに出てインストールが途中で停止?しています。なにか知恵ある方はいませんでしょうか。 --
- Radeonでforge使ってみたけど、directml版の方が早いな・・・。githubのisueeを見た感じだとdirectml使用のforgeはまだ未完?ぽくて動作させるのも手間がかかった。 --
- 最近ローカルSDが楽しいからRX6800からGeforceに変えようかな…せめて3080の中古にしようかな…。 --
- 3000番台とそれ以前のグラボはマイニング疑惑を拭えないので基本的には背中を押しづらい……。
一応、中古グラボにも有料の延長保証を提供してる販売店もある(例: ツクモ延長保証)。例えば3080の中古が59,800円と仮定した場合、+3,300円で保証が「購入日から3年間」になるのだ。
とはいえ補償金額にも上限が存在するので、修理費用の100%を賄えるとは限らない点に注意してほしい。 --
- 情報thx、そうかぁ、マイニングで使われてた個体かぁ…。寸法ちゃんと見てないですけども、近そうなので出来れば4000番台があったら買って試してみます! --
- ついでに: ツクモ本店リユース館の中古グラボ在庫情報
消費電力・発熱・騒音は4000番台に劣るものの、Forge環境なら4070に近い速度を期待できそう。あとは寸法と補助電源次第だけど、結構お得感あるね。 --
- ZLUDA v3.5+7900XTX環境でのkohya_ss guiでSDXLのLora学習メモ
適切でない箇所があれば指摘求む
train_network.pyの
import torch
の下に以下を追記
torch.backends.cudnn.enabled = False
torch.backends.cuda.enable_flash_sdp(False)
torch.backends.cuda.enable_math_sdp(True)
torch.backends.cuda.enable_mem_efficient_sdp(False)
Parameters/Advanced/Blocks/CrossAttentionがxformersだとエラーになるのでnoneに変更
Parameters/Advanced/Weight/Gradient checkpointingをONにしないとVRAM不足になる
完成したLoraをforge+ZLUDAに入れて生成できること&学習したキャラっぽくなることは確認できた --
- RuntimeError: cuDNN error: CUDNN_STATUS_INTERNAL_ERRORと出て学習出来ん、何が間違ってるんやろか --
- エラー的に上記の○○.pyの書き換えミスってるか、venvのdllの置き換え忘れてるような気がする。あまり学習はやらないけど、俺もできたからたぶん行けるはず --
- SD.Nextの新機能「deep cache」、token mergeと似た感じで絵柄の互換性の低下と引き換えにかなりスピードアップするな、Mac使いとしてはありがたい。
標準設定だと3itごとにキャッシュ更新するよう簡略化することで倍以上速くなる。 --
- 何故かグラボを使わなくなって多分cpuで動かすようになり、生成時間がとんでもなく長くなり、パソコンを初期化しgithubに書いてある通りにインストールしたら、今度は生成しようてするとnvidiaのドライバーが無いってエラーが出て生成すらできなくなりました。何か原因がわかる人いませんでしょうか? --
- おそらくプログラムがGPUを見つけられてない状態。インストールの設定でドライバ指定場所をミスってるかドライバを正常にインストール出来てないか最悪グラボそのものが壊れて認識できてない可能性も・・・ --
- v1.8.0になってませんか?最新のはなんか導入方法変わってそうで1.7.0の方法じゃできなさそうだったから分かる人来るまで前の使うしかないかも。 --
- VER1.8.0から生成速度が遅くなり、再インストールしたら1.8.0RC??とかいうのになって、さらに生成できなくなりました。昔のバージョンの1.7.0等のプログラムはどこでダウンロードできるのでしょうか? --
- 1111にはバージョン毎のDLリンクは存在しません。GitHubのコミットハッシュで管理されているからです。
任意の過去バージョンに戻したい場合はgit resetを利用することになります。
誘導→ ローカル版更新#git_reset --
- ありがとうございます!早速試してみます! --
- これじゃ皆、geforceにするだろうな~。。。 --
- 再インストールしたら同じ現象が出た。今のところダウングレード以外に解決策はないのか… --
- >1111にはバージョン毎のDLリンクは存在しません。
ごめんこれ書いたの俺だけど、たぶん誤りです……。
1111のReleasesページ下部にあるAssetsにSouce codeのzipがあって、その中身が普通に使えそう。 --
- Arc A770 16GB、最新の1111(--use-ipex)+Rightning LoraでとりあえずSDXL動くは動くな…(このLora無いと速度的に実用は厳しいが) --
- それはそれとして解像度の最終値1920x1080だとほぼ真っ黒な癖に2048x1152だとアプスケでも直でも普通に出る(なお速度)のなんでや!バグ? --
- Forge?Forgeっていうかvlanmandic以外はまあうん…(きっちりやれば使えるのかも知らんけどどれもPyTorchがどうこう以前の段階でなんもわからんエラー吐いて起動すら出来んのでなんもわからん) --
- 128の倍数じゃないかどうかかと、前者は1080が違うが後者は両方とも倍数。
hypertileで128bitが大きい意味を持つようになったから、違う解像度はメモリ効率落ちるんじゃないかな。 --
- 1024x1024はダメだけど、1032x1032は出る。片側1000以上になると相性あるみたい?速度は意外と出てるほうだと思う。1032x1032で1.05it/s。遅いっちゃ遅いけどネ! --
- A770LEで色々試したけど64の倍数がいいのかな?1088x1088だと絵も綺麗に出て速度も1.43it/sだった。1024x1024のForge版RTX3060ぐらいの速度。
ただこの解像度でVRAM使用量が11GBあるので、8GBだと厳しいかも。
WSL版SD.NEXTのSD1.5よりは高解像度は早い。そして不安定!
ちなみに1400x1400以上だと落ちはしないけどスワップ発生した。起動オプションは--use-ipex --opt-sub-quad-attention
一応--opt-sub-quad-attentionは効果ある・・ような気がする。おま環かもしれないけどSD1.5はエラーでてダメでした。 --
- ん?もしかしてZLUDAはNVIDIAの権利侵害しててもう進展の見込みない?windows版のROCm早くしてくれ~ --
- なんか3月10日あたりから、Windows+Intel ArcでのVRAM消費削減術をやっても1024x1536が作れなくなった(6.5GBに収まるどころかVRAM超過エラーに陥る)。
SD.Nextの更新、WSLのモジュールの更新、それともArcドライバの更新のどれか見当もつかん。急にVRAM効率が悪化してしまった。 --
- AMDでSD.next使ってるが、特に変化は感じない。SD.next以外の要因じゃね? --
- A750?まあそれはさておきドライバかなあ…今はだいぶまともになったとはいえA770が普通に動いてる横でA750以下は不具合出てるパターンたまにあるし(逆も然り) --
- A750使ってる。試しにドライバを5333から5085に戻してみたけど変わらず。512x768の1.75倍Hires. fix(1344x896)ですらVRAM 7.2GBも食われてる。先週まではこんなにVRAM効率悪くなかったはずなのに。 -- 木主?
- HyperTile UNetを有効にしたらあっさり解決しちゃった。お騒がせして申し訳ない。Arcドライバ5085、SD.next dev版の0629e66fで確認。あとでドライバ5333でも試してみる。
ところでTiled VAEのFast EncoderとFast Decoderを無効にしたら、さらにVRAM消費が減ることも判明。それ以外はVRAM消費削減術の通りにして、結果4.9GB。Decoder Tile Sizeを96にしても、5.3GBで済んだ。 -- 木主?
- ドライバ5333でも問題なし。解決。 -- 木主?
- forgeのgitでintel arcで動かせるか?ってスレが立ってて、そこに書いてあるrng.pyを書き換えるやり方で生成できるようになった(A750)。ただ根本的に未対応なのか設定の問題なのか分からないけど、SDnextと比べて生成速度はほとんど変わらない(4GB制限の対応方法も書かれていたので試したけど、生成速度に効果は感じられず)。SDnextだとうまくいかなかったSDLXは、1024x1024は生成できた。ただリファイナーを噛まそうとするとエラー、1024x1536でもメモリ不足でエラーが出ちゃう。A770なら大丈夫かも。とりあえずアニマジンに触れられて満足。 --
- 生成速度についてきちんと計測してみたところ、画像サイズにもよるけど、1.5ではA1111と比べて72~85%程度の時間になったんで、そっちの効果はまあまああるみたい。
SDXLの1024x1024は15秒ほど、Lightning Loraの8ステップで6秒ほどでした。(A750) --
- Windows(WSL) + Intel Arc(A750) + SD.Next環境で、画像生成中に突然画面がフリーズ→数秒間暗転して画像生成に失敗することがたまにある。WSL上では「RuntimeError: Native API failed. Native API returns: -2 (PI_ERROR_DEVICE_NOT_AVAILABLE) -2 (PI_ERROR_DEVICE_NOT_AVAILABLE)」、イベントビューアーでは「ディスプレイ ドライバー igfxnd が応答を停止しましたが、正常に回復しました。」と出る。
普段はVRAM消費削減術を使いながら、512x768を2.5倍にRefine(1280x1920)して出力しているが、それでもVRAMにはまだ余裕がある(6.2GB消費)んだがなあ。 --
- Zluda+SD.next with StabilityMatrixで動作成功した。DirectML版のインストールからautomaticのwikiを参考に環境変数を足してcmdからreinstallで完了。一部サンプラーは無理なのね。 --
- IPEX改変版がCoreUltra iGPU向けに出てる、グラボなしだけど試したいって人柱ラーは試してみては。Xeコア向けと明言されてるのでもうちょっと古い世代でもXeコアなら動くかも。
https://github.com/Nuullll/intel-extension-for-pytorch --
- AsrockのHPにradeon用の生成AIソフトのインストーラーが公開されてる。 --
- forgeにzluda専用フォーク登場。
https://github.com/likelovewant/stable-diffusion-webui-forge-on-amd --
- ROCm 6.1出てるが、Linux限定。AMDェ…
https://github.com/ROCm/ROCm/releases/tag/rocm-6.1.0 --
- ComfyUIにmacOS用インストールスクリプトが出てる。表記はAppleSiliconになってるがIntel機で試してちゃんとcoreML経由Metal仕様で動いてる。16GB RAM ivybridgeでSDXLをフルサイズ超で使えるのは嬉しい、1024平方で60s/itだが。
https://github.com/comfyanonymous/ComfyUI/discussions/3283 --
- 書き忘れてた、SD1.5 512x512では以前SD.NextのmacOS版で書き込んだのと同じ20s/itだった、ComfyUIが得意な高効率なRAM利用で大きい画像でもスワップせず処理しての結果かと>SDXL 1024x1024 60s/it --