Ubuntu에서 nvidia-smi 실행시 Failed to initialize NVML: Driver/library version mismatch 오류 해결하기
2023. 7. 30. 19:42ㆍ개발 일지/인공지능
Pytorch를 사용할 때, torch.cuda.is_available()가 False 가 나오면, GPU 연결에 문제가 생겼을 가능성이 높다.
import torch
import torch.nn.functional as F
if torch.cuda.is_available():
device = 'cuda'
else:
device = 'cpu'
터미널에 nvidia-smi 를 쳐서 확인해보자.
$ nvidia-smi
Failed to initialize NVML: Driver/library version mismatch
확인해보니, Failed to initialize NVML: Driver/library version mismatch 오류가 발생했다.
재부팅하는 방법도 있지만, 재부팅을 하지 않고서 해결할 수 있는 방법이 있다.
아래의 내용은 nvidia를 unload 하고 다시 nvidia-smi 를 쳐서 다시 load 하는 방법이다.
아래처럼 실행하면 해결된다.
sudo rmmod nvidia_drm
sudo rmmod nvidia_modeset
sudo rmmod nvidia_uvm
sudo rmmod nvidia
위의 명령어를 실행하다가
rmmod: ERROR: Module nvidia_drm is in use 라는 등의 오류가 발생하면
아래와 같은 방법으로 해결할 수 있다.
systemctl isolate multi-user.target
# 위의 명령어를 실행하고 아래 명령어를 다시 실행
sudo rmmod nvidia_drm
sudo rmmod nvidia_modeset
sudo rmmod nvidia_uvm
sudo rmmod nvidia
전부 unload 되었는 지 확인해보자.
lsmod | grep nvidia
이렇게 쳤을 때, 아무것도 안나와야한다.
이제 다시 nvidia-smi 를 실행하고
nvidia-smi
Torch에 정상적으로 로드가 된다.
'개발 일지 > 인공지능' 카테고리의 다른 글
Minikube (k8s 1.28.2) + Kubeflow 1.8 설치하기 (0) | 2024.07.09 |
---|---|
여기서는 다양한 개발 관련 지식을 포스팅합니다. (0) | 2023.07.07 |