본문 바로가기
TechStudy/Else

nvidia-smi가 먹통일 때 해결하기

nvidia-smi는 gpu가 어디서 사용되고있는지, 상태가 정상인지 확인할 수 있는 기본 명령어이다.

 

그런데...

 

 

 

nvidia-smi


Failed to initialize NVML: Driver/library version mismatch
NVML library version: 535.183

이런식으로 출력되면 미치는거지..

 

 

 

근데 사실 해결방법은 간단하다. 기존 엔비디아 드라이버 버전이 구식이라 업데이트가 필요하다는 의미로, 기존 드라이버를 제거하고 업데이트를 해주면 된다. 여러 블로그에 여러가지 방법을 나열해놓았지만.. 내가 해결한 방법을 정리하고자 한다.

 

 

우선 현재 설치된 버전을 확인한다

sudo lspci | grep NVIDIA

 

 

그리고 아래 명령어로 그냥 다 깔끔하게 지우자

sudo systemctl isolate multi-user.target
sudo apt-get remove --purge '^nvidia-.*'
sudo apt-get remove --purge nvidia-drm nvidia-kernel-common nvidia-kernel-dkms nvidia-settings nvidia-utils
sudo apt-get autoremove
sudo apt-get clean

 

 

 

 

이 다음에 최신 드라이버를 설치하기 위해 다음 명령어를 차례대로 수행한다.

 

sudo apt-add-repository ppa:graphics-drivers/ppa

sudo apt-get update

sudo apt-cache search nvidia | grep driver

마지막 명령어로 현재 환경에 맞는 설치가능한 드라이버 리스트가 나오는데 거기서 제일 아래에 출력된, 숫자가 가장 높은것을 기억한다.

 

 

 

그리고 그 숫자를 아래 코드 해당부분에 넣으면 된다.

sudo apt-get install nvidia-driver-숫자입력

 

 

이후에 'sudo reboot' 실행 후, 실물 서버가 재부팅되길 기다리고나서 nvidia-smi를 실행하면

 

 

 

 

보고싶었던 상태 출력창이 드디어 잘 뜬다 :D

 

 

 

 

 

 

Nvidia-smi보다 더 좋은거?

관리자계정으로 pip install gpustat 설치하고 gpustat을 실행하면..

GPU 관련 정보만 이쁘게 출력된다.

728x90
반응형