GPUが利用できる機械学習環境をDockerを使って構築していきます。
導入
メリット
- GPUの設定とかが楽(あまり細かいことを考えなくて済む)
- 環境が壊れてもすぐに再構築できる
- 新しいPCにもすぐに環境を構築できる
環境
私の環境は以下の通りです。
- Windows11
- CUDA version 12.0
- Nvidia ドライバー 527.56
環境の調べ方
検索窓に「cmd」とうち、コマンドプロンプトを起動させる
次に、「nvidia-smi」と打つことでCUDAバージョンとNvidiaドライバーのバージョンを確認できる
Dockerのインストール
こちらのDocker-desktopのインストールを参照してください。
Dockerのイメージを取得
以下のURLでNVIDIAが出しているイメージを取得できます。自分のPCのCUDA VersionとNVIDIA Driverのバージョンとコンテナイメージの「System Requirements」を見比べて、条件を満たすイメージを選んでください。
次に、以下のURLを参考にして、Dockerコンテナを作成してください。
私の実行例を示しておきます
docker run --name test --gpus all -it -p 8888:8888 --ipc=host -d -v C:\Users\xxx\Documents:/workspace nvcr.io/nvidia/pytorch:23.02-py3
- docker run: コンテナ作成コマンド
- name: コンテナに名前を付ける
- it: ホストでシェルが使えるようになる
- p: 8888:8888 ホストポート:コンテナポート
- shm-size: RAMの共有メモリの大きさ 8G or 16Gくらいが多そう
- ipc=host: とすればホストと同様に共有メモリを使えるそう
- rm: があるとコンテナ停止時に自動でコンテナが削除される
- d: コンテナをバックグラウンドで実行し、コンテナIDを表示
- v: local_dir:container_dir ローカルディレクトリとコンテナディレクトリをつなげる
VSCodeからアクセス
VSCodeをインストールしてください。その後、Dockerの拡張機能もインストールしてください。
VSCodeの左側に上記のマークが出てくると思うので、クリックしてください。
すると、このようにDockerのコンテナが表示されていることが分かると思います。
ここでもし、「Failed:」と表示されていたらDocker-Desktopの起動を行ってください。するとDockerが立ち上がって、VSCodeにコンテナが反映されると思います。
コンテナが表示されたら、スタートさせたいコンテナ部分で右クリックし、「start」ボタンを押してください。さらに、スタートしているコンテナ部分で再度右クリックすると「Visual Stadio Codeをアタッチする」の表示が出てくるので、そこをクリックしてください。
すると、コンテナの部分にアクセスできているかと思います。
パスを聞かれる際は、もともと入力されているものを消し、「workspace」と入力することで作業ディレクトリを開くことができます。
コメント