複数GPUを積んだマシンのDocker runで実行するGPUを指定する

複数GPUを積んだマシンでDockerを使う時、どのGPUを使うのか指定したくなった。

GPUでDockerを使う方法はたくさん紹介されているが、ほとんどが–gpus allをつかっており、個別に指定する方法がわからなかったので調べてみた。

上手く行った例。

docker container run --gpus '"device=0,1"'

だめだった例。

CUDA_VISIBLE_DEVICES=0,1 docker container run --gpus all
docker container run --gpus 0,1
docker container run --gpus "device=0,1"

‘”device=0,1″‘を記載する時は、シングルクォーテーションとダブルクォーテーションの両方を使って括る必要があったので注意。

また、device番号はnvidia-smiで見える番号とは一致しなかった。

おそらくマザーボードのPCIEバスの番号が対応しているのではないかと予想される。

参考

docker run
docker run: The `docker run` command first `creates` a writeable container layer over the specified image, and then `starts` it using the specified command. Tha...

Docker/Kubernetes 実践コンテナ開発入門 | 山田 明憲 |本 | 通販 | Amazon
Amazonで山田 明憲のDocker/Kubernetes 実践コンテナ開発入門。アマゾンならポイント還元本が多数。山田 明憲作品ほか、お急ぎ便対象商品は当日お届けも可能。またDocker/Kubernetes 実践コンテナ開発入門もアマゾン配送商品なら通常配送無料。

コメント

タイトルとURLをコピーしました