Docker
slurm nvidia-docker 忽略 CUDA_VISIBLE_DEVICES
我在 slurm 集群上執行 nvidia-docker 容器時遇到問題。當在容器內時,所有 gpus 都是可見的,所以基本上它會忽略 slurm 設置的 CUDA_VISIBLE_DEVICES 環境。在容器外,可見的 gpus 是正確的。
有沒有辦法限制容器,例如使用 -e NVIDIA_VISIBLE_DEVICES ?或者有沒有辦法將 NVIDIA_VISIBLE_DEVICES 設置為 CUDA_VISIBLE_DEVICES ?
這個問題發生在我身上,解決辦法是在計算節點上安裝rootless docker。我認為這是因為 docker daemon 是在 Slurm 程序執行之前執行的,所以你失去了 Slurm 的抽象層。
要安裝無根 docker,您可以使用類似於 Deepops 安裝過程的方法,使用 playbook。您可以按照以下指南進行操作。
我希望這能解決你的問題。