複数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
https://amzn.to/3mRcdW3
コメント