目標,本記事の特徴
機械学習/深層学習用の環境を構築する。
PytorchがしっかりGPU上で動作するようにする。
なぜか他の記事より少ない手順でそれが実現できてしまった。
手法
nvidiaドライバー導入
WSLの場合不要(windowsのほうにnvidia driverが入っていればOK)
sudo apt-get install ubuntu-drivers-common
ubuntu-drivers devices
sudo apt-get update
sudo ubuntu-drivers autoinstall
sudo reboot
動作確認表が出力されればOK
nvidia-smi
anacondaに合わせてgitも一応入れておく
sudo apt-get install git
wget https://repo.anaconda.com/archive/Anaconda3-2019.07-Linux-x86_64.sh
bash Anaconda3-2019.07-Linux-x86_64.sh
仮想環境上にpytorchもろもろを導入(仮想じゃなくてもいいけど)
conda installは以下のページ参照
pipがいいならpipのを以下のページからとってくればいい
https://pytorch.org/get-started/previous-versions/
conda create -n testenv python=3.7.3
conda activate testenv
conda install pytorch==1.10.0 torchvision==0.11.0 torchaudio==0.10.0 cudatoolkit=11.3 -c pytorch -c conda-forge
WSLの場合これも実行
echo "export PATH=~/anaconda3/bin:\$PATH" >> ~/.bashrc
source ~/.bashrc
動作確認トレーニングがしっかりGPUを利用して使われていたらOK(nvidia-smiでGPU使用率が確認できる)
git clone https://github.com/pytorch/examples.git
cd examples/vae/
python main.py
実証環境
ubuntu 18.4
Intel(R) Core(TM) i9-7920X CPU @ 2.90GHz
NVIDIA RTX A5000
mem:32GB
※Ampereアーキテクチャではcuda11.x以上でないと動かないらしい
謎
通常どの記事もcondaからとは別でnvidia driver->cuda->cudnnといったように導入するように紹介しているが、そうしなくてもしっかり動いた。(逆にそうすると自分の環境だと行き詰ってしまう)
だれかそうする理由知っていたら教えてください。自分が知らないだけかもしれないので。
間違えている可能性があるので一応気を付けてください