まえがき
DirectML版で以前から動かしてたけど遅かったんで環境をUbuntu 22.04に動かした。そのセットアップメモ。
ちゃんとRadeonでも高速に動きます
免責:このページに書いていることを行って発生したいかなる損害について筆者は責任を負いません。自己責任でお願いします。(テンプレ)
筆者の環境
- OS: Ubuntu 22.04 Jammy
機械学習系やるならやはりユーザーが多いUbuntuがいいんじゃないでしょうか
- GPU: RX 6650XT
6000シリーズ以外だと手順とかこのあとの引数とか環境変数とかが違ってくるらしいです
手順
なんか途中でエラーが起きたらググるなりして自分で対処してください
あとタイポ等あったらすいません。気付き次第修正します
https://repo.radeon.com/amdgpu-install/latest/ubuntu/
ここにアクセスして、コードネーム(今回はUbuntu 22.04なのでjammy)を選び、最新のROCmライタイムのインストーラを拾ってきてください
拾ったらターミナルで
sudo dpkg -i インストーラーのファイル名
を実行し、完了したらamdgpu-installが利用可能になっている筈なので、
sudo amdgpu-install --usecase=rocm --no-dkms
を実行してください。アップストリームカーネルに付属しているamdgpuドライバをそのまま利用するため、dkms等は必要ありません。10GBを超えるインストールが走るので、気長に待ちましょう
完了すれば、ROCmランタイムが入ったはずなので、
sudo usermod -aG render <ユーザー名>
を実行し、再起動
再起動後に
rocm-smi
や
rocminfo
で正常に情報が出てればOKです。
動かないときは、
sudo usermod -aG video <ユーザー名>
をして再起動すれば動くかもしれません。
次に、WebUIを落とします。
sudo apt install git python3 python3-venv
でgit、python3を落とし、 任意のディレクトリで
git clone https://github.com/AUTOMATIC1111/stable-diffusion-webui
を実行。
cd stable-diffusion-webui
でディレクトリに入り、
python3 -m venv venv
で仮想環境を作成
source venv/bin/activate
で仮想環境をアクティベートして、 https://pytorch.org/get-started/locally/ にアクセスし、stable/linux/pip/python/rocmを選択し、表示されたコマンドを実行。今回では、
pip3 install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/rocm5.4.2
を実行し、これでpytorchの導入完了。最後に、
HSA_OVERRIDE_GFX_VERSION=10.3.0 ./webui.sh --upcast-sampling --opt-sub-quad-attention --no-half-vae --medvram
を実行し、ターミナルの動きが落ちついたら、ブラウザでhttp://localhost:7860/にアクセスしてフィニッシュです。
現状のRDNA2用のROCmにおいてコンシュマー向けではRX 6800系(gfx1030)しか正式サポートされてないらしいので環境変数としてHSAなんちゃらをつけてRX 6800に偽装?してます。
また、VRAMが潤沢な環境(羨ましい)では--medvramは不要です。
SDXLを実行時にアップスケールが失敗したので--no-half-vaeをつけてます。
他の引数については自分で調べてください。RX 5000系では引数に--precision full --no-halfがいるらしいです。
引数の追記がめんどくさい人はwebui-user.shを、環境変数は.bashrcとかを適宜書き換えてください
あとがき
この記事が役に立ったと思っていただけたなら、僕にVRAMが8GBより大きいGPUをください(???) 中古でもいいのください!!!!!!!!! 連絡はプロフィール欄から!!!!!!!!!