GPU搭載のLinuxマシンを組み立てましたが、これに機械学習の環境を構築してみました。
今回は以下のものをUbuntu 20.04.5 LTSにインストールしています。
- CUDA 12
- PyTorch (Stable 1.13.1)
- JupyterLab
CUDAのインストール
CUDAはDownloadのページにあった最新版のCUDA 12をインストールしてしまいました。インストールは公式ページの通りに行いました。
Download Installer for Linux Ubuntu 20.04 x86_64
$ wget https://developer.download.nvidia.com/compute/cuda/repos/ubuntu2004/x86_64/cuda-ubuntu2004.pin $ sudo mv cuda-ubuntu2004.pin /etc/apt/preferences.d/cuda-repository-pin-600 $ wget https://developer.download.nvidia.com/compute/cuda/12.0.0/local_installers/cuda-repo-ubuntu2004-12-0-local_12.0.0-525.60.13-1_amd64.deb $ sudo dpkg -i cuda-repo-ubuntu2004-12-0-local_12.0.0-525.60.13-1_amd64.deb $ sudo cp /var/cuda-repo-ubuntu2004-12-0-local/cuda-*-keyring.gpg /usr/share/keyrings/ $ sudo apt-get update $ sudo apt-get -y install cuda 実はCUDA 12は最近リリースされたばかりで、本来なら実績のあるCUDA 11系にすべきでしたがあとの祭りです。
CUDAの動作確認
せっかくなのでCUDA 12でサンプルプログラムを動かしてみます。
githubからクローンしたサンプルプログラムをコンパイルします。
| |
Finished Building CUDA samplesと表示されればコンパイル完了です。
生成された実行形式のバイナリはbinの中にあります。ここではoceanFFTを実行してみます。
| |
Jetson Nanoでみたことがあるシミュレーション結果が表示されました。CUDA 12自体は動いているようです。

この状態でnvidia-smiコマンドを入力するとoceanFFTのプロセスでGPUが使われていることが確認できました。

PyTorchのインストール
PyTorchのドキュメントには最近リリースされたCUDA 12については情報がなかったのですが、ダメもとでインストールしてみました。
こちらも公式サイトのStart Locallyの通りにしています。CUDA 12は無いのでCUDA 11.7のインストール手順に従いました。

インストールのコマンドは以下の通りです。
| |
インストールが終わったので動作確認です。
| |
なにやら動いているようです。
肝心なGPUは動いているのでしょうか。以下のコマンドで確認します。
| |
一応動いているように見えます。
JupyterLabのインストール
使い勝手がよくなるようにJupyterLabをインストールします。うまくいけばGoogle Colaboと同様の環境ができあがります。
| |
以下のコマンドで起動します。
| |
うまく起動できたようなので、PytorchのチュートリアルのQuickStartにしたがって動作確認をすすめました。

なんとデータセットの読み込みからモデルの構築、最適化、モデルの保存まで一通り問題なく動いてしまいました。

まとめ
今のところ、Google Colaboと同等に動いているように見えます。とはいえCUDA 12はPyTorchで正式サポートとはなっていないので何が起こるかわかりません。あくまでも実験的な記録として扱ってください。まだ機械学習は初心者なのでこの環境でチュートリアルを進めてみたいと思います。
