完整报错:
Traceback (most recent call last):
File "/home/-/miniconda3/envs/-/lib/python3.9/site-packages/torch/cuda/__init__.py", line 311, in _lazy_init
queued_call()
File "/home/-/miniconda3/envs/-/lib/python3.9/site-packages/torch/cuda/__init__.py", line 180, in _check_capability
capability = get_device_capability(d)
File "/home/-/miniconda3/envs/-/lib/python3.9/site-packages/torch/cuda/__init__.py", line 435, in get_device_capability
prop = get_device_properties(device)
File "/home/-/miniconda3/envs/-/lib/python3.9/site-packages/torch/cuda/__init__.py", line 453, in get_device_properties
return _get_device_properties(device) # type: ignore[name-defined]
RuntimeError: device >= 0 && device < num_gpus INTERNAL ASSERT FAILED at "../aten/src/ATen/cuda/CUDAContext.cpp":50, please report a bug to PyTorch. device=1, num_gpus=
其中,代码包含了
os.environ['CUDA_VISIBLE_DEVICES'] = '1'
环境变量中的设备数与pytorch中的产生冲突。将环境变量声明移动到import torch之前可以解决问题:
import os
os.environ['CUDA_VISIBLE_DEVICES'] = '1'
import torch