Si vous utilisez le multitraitement avec pytorch, vous risquez de vous fâcher à l'initialisation de CUDA.
RuntimeError: cuda runtime error (3) : initialization error at /pytorch/aten/src/THC/THCGeneral.cpp:50
THCudaCheck FAIL file=/pytorch/aten/src/THC/THCGeneral.cpp line=50 error=3 : initialization error
Après diverses recherches, j'ai trouvé divers documents sur le spawn, mais il semble que c'était parce que j'utilisais torch.cuda.device_count ()
.
Donc, je veux connaître le nombre de GPU sans torch.cuda.device_count ()
.
Fiez-vous à nvidia-smi
.
Dans le cas de Linux, c'est comme suit.
import subprocess
msg = subprocess.check_output("nvidia-smi --query-gpu=index --format=csv", shell=True)
n_devices = max(0, len(msg.decode().split("\n")) - 2)
Veuillez être conscient du problème d'initialisation CUDA de pytorch.
Recommended Posts