LoginSignup
0
0

【クラウド初心者】AWSを用いてStreamDiffusionをM2 Macbook Airで動かそうとした話

Last updated at Posted at 2024-02-09

【目標】AWSを用いてStreamDiffusionをM2 Macbook Airで動かす

(AWSどころかクラウドサービス触ったことないのでビビりながらやってます...)

AWSの登録

  1. AWSに登録する。英語表記の住所の書き方→https://kimini.jp
  2. リージョンをとりあえず大阪に変更。1
    • g4dn.xlargeのスポットインスタンス料金(Linux/UNIX)が東京よりも安かった。23
    • ちなみにスポットインスタンスとは余剰計算資源を安価で使用できるサービス。45
大阪と東京のスポットインスタンス料金差

大阪料金

東京料金

  1. 初めましての場合はSpot Instance クォータを引き上げる必要があるようだ。
    • 寝て待つ。
    • 起きたらダメですと返事が来た。とりあえず使用理由を返信して再検討を期待する。寝て待つ。
    • 5日経っても音沙汰がなかったので、チャットで催促したら引き上げてくれた。
Spot Instance クォータの引き上げ前後

申請前

申請後

AWSのインスタンスを立ち上げから接続まで

  1. VPCの作成
    https://dev.classmethod.jp/articles/vpc-beginner-2023/
  2. セキュリティグループの作成
    https://kacfg.com/ec2-amazon-linux/
  3. インスタンスの立ち上げ
  4. SSHでインスタンスに接続
サンプルコード

インスタンスの立ち上げ




SSHでインスタンスに接続

↓↓↓ 接続後 ↓↓↓

StreamDiffusionの下準備

  1. お約束
sudo apt update
sudp apt upgrade

変な画面が出るけど、わからないのでEnterキーをビターン!

変な画面

  1. CUDA 12.1のインストール
GPU, CPUアーキテクチャおよびOSの事前確認
lspci | grep -i nvidia
uname -m
cat /etc/issue

↓NVIDIAの公式から、自分の環境に合ったCUDA 12.1をインストールする↓
https://developer.nvidia.com/cuda-12-1-0-download-archive?target_os=Linux&target_arch=x86_64&Distribution=Ubuntu&target_version=22.04&target_type=deb_local

インストール後の確認
nvidia-smi
  1. python3.10系のインストール
sudo apt install -y python3.10 python3.10-venv
インストール後の確認
python3 -V
  1. 新しいnodejs, npmのインストール
sudo apt install -y nodejs npm
sudo npm install n -g
sudo n lts
sudo reboot
インストール後の確認
node -v
  1. pnpmのインストール
sudo npm install -g pnpm

StreamDiffusionのインストール

git clone https://github.com/cumulo-autumn/StreamDiffusion.git
cd StreamDiffusion/
python3 -m venv .venv
source .venv/bin/activate
pip3 install torch==2.1.0 torchvision==0.16.0 xformers --index-url https://download.pytorch.org/whl/cu121
pip install git+https://github.com/cumulo-autumn/StreamDiffusion.git@main#egg=streamdiffusion[tensorrt]
python3 -m streamdiffusion.tools.install-tensorrt

満を持してreal-txt2imgのデモを動かしてみる

pip install -r requirements.txt
cd frontend
pnpm i
pnpm run build
cd ..
python3 main.py

お、動くか???

ふーん(憤怒)
ストレージ30Gじゃ足りなかったか...

【失敗編】M2 Macbook AirにStreamDiffusionをローカルで入れようとした

とりあえず公式のREADME.mdを読んで、Installationをやっていく

  1. StreamDiffusionをGitHubからcloneする
git clone https://github.com/cumulo-autumn/StreamDiffusion.git
  1. pyenvをインストールする
brew install pyenv
echo 'export PYENV_ROOT="$HOME/.pyenv"' >> ~/.zshrc
echo '[[ -d $PYENV_ROOT/bin ]] && export PATH="$PYENV_ROOT/bin:$PATH"' >> ~/.zshrc
echo 'eval "$(pyenv init -)"' >> ~/.zshrc
  1. pyenvからpython3.10.13をインストールする
pyenv install 3.10.13
  1. StreamDiffusionのディレクトリに移動し、python3.10をデフォルトにする
cd StreamDiffusion
pyenv local 3.10.13
  1. 仮想環境を作成する
python -m venv .venv
source .venv/bin/activate
  1. CUDA 11.8/12.1対応のPyTorchをインストールする → NVIDIAのGPUが搭載されていないので終わり

それはそうだった。。。

  1. https://docs.aws.amazon.com/ja_jp/AWSEC2/latest/UserGuide/using-regions-availability-zones.html より

  2. https://aws.amazon.com/jp/ec2/spot/pricing/ より

  3. https://aws.amazon.com/jp/ec2/spot/instance-advisor/ より

  4. https://docs.aws.amazon.com/ja_jp/AWSEC2/latest/UserGuide/using-spot-instances.html より

  5. https://qiita.com/tonishy/items/fc226da30f6dbb845077 より

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0