Contents
背景
検証していたとある機械学習のリポジトリには、事前にあれこれインストールが必要だった。 でも環境を汚したくはなくって vscode の Dev Containers で用意した Ubuntu と CUDA を使った環境を構築したって話。
docker はちゃんと設定をしないと CUDA は使えないのがポイント。
Dev Containers は凄く便利なので、使ってない人は是非使ってみてほしい。
TL;DR
以下のように devcontainer.json
の runArgs
を設定してやる。
{
"name": "Ubuntu",
"image": "mcr.microsoft.com/devcontainers/base:jammy",
"runArgs": [
"--gpus",
"all",
]
}
必要なもの
nvidia-smi で動作確認
- Containerを作る前に、ローカルのターミナルで
nvidia-smi
が使えることを確認する。
Containerを作る
-
作業ディレクトリを開いて、リモートエクスプローラーからOpen Current Folder in Containerを選択。
Ubuntu の次に Python(latest) を選択すると Container が作られる(ちょっと時間かかる)。
-
devcontainer.json に runArgs を追記する。
デフォルトでは動作確認で使用した
nvidia-smi
が見つからず、 CUDA が使えないはず。Docker は GPU を使用する場合にdocker run
の引数で指定する必要がある。devcontainer.json で runArgs の設定を変更する。
{ "name": "Ubuntu", "image": "mcr.microsoft.com/devcontainers/base:jammy", "runArgs": [ "--gpus", "all", ] }
-
左下からリモートウィンドウを開いて container を rebuild。
-
nvidia-smi で再度確認。
- nvidia-smi