728x90
반응형
에러 내용
RuntimeError: Attempting to deserialize object on a CUDA device but torch.cuda.is_available() is False. If you are running on a CPU-only machine, please use torch.load with map_location=torch.device('cpu') to map your storages to the CPU.
CUDA 10.0 버전에서 Pytorch 1.3.0 이상의 버전을 썼을 때 torch.cuda.is_available() 이 자꾸 false 가 뜨는 현상을 맞이했다.
CUDA 및 Nvidia driver 와 적절하게 맞는 Pytorch 버전을 사용하지 않아서 생기는 문제 같음 ...
포럼에 의하면, 보통 cuda 버전을 바꾸기 번거로우므로 torch 버전을 변경하여 사용함
그런데 너무 낮은 cuda 버전에다 너무 낮은 nvidia driver 를 사용한다면, torch 버전을 낮추기 보다는 cuda 나 driver 를 업데이트 하는 걸 추천함
docker 또는 Anaconda 같은 가상환경에서 torch 1.2.0 버전을 깔아서 테스트하면 torch.cuda.is_available() 은 true 뜸
간단히 테스트 하려면 명령창에 python 실행해서 import torch 선언 후에 torch.cuda.is_available() 입력하면 true 인지 false 인지 뜸
참고자료 2 : https://github.com/pytorch/pytorch/issues/15612
728x90
반응형