까먹으면 적어두자
우분투에서 Cuda 버전 다운그레이드 본문
문제
GPU로 인공지능 모델을 돌리기 위해서는 Compute Unified Device Architecture(CUDA)를 설치해야 한다.
그런데 가끔 이 CUDA와 Tensorflow나 pyTorch의 버전이 호환이 안 되는 경우가 있다.
그럴 경우 CUDA를 밀고 낮은 버전으로 설치해야 하는데 리눅스 서버에서 이를 잘못 지우면 다 망가져버릴 수도 있다.
가장 문제는 CUDA를 지워도 설치하는 과정에서 원하는 버전이 아닌 전에 설치한 상위 버전으로 설치되는 것이다.
해결방법
1. CUDA를 지워버리기
apt-get --purge remove "*cublas*" "cuda*"
일부 포스팅에서는 nvidia*를 지우라고 안내하는 포스팅도 있는데 이러면 그래픽 드라이버도 지워버리기 때문에 더 귀찮아질 수도 있다.
2. 재부팅
sudo reboot
3. CUDA Toolkit 홈페이지에서 원하는 버전을 찾기
https://developer.nvidia.com/cuda-toolkit-archive
위 링크에서 자신이 필요한 버전을 클릭한다(이 포스팅에서는 10.2).
4. 서버에 맞는 버전 선택 후 deb (local) 선택
꼭 맨 아래에 Installer Type을 deb (Local)로 선택한다.
5. 설치 과정에 필요한 명령어를 보고 실행 (빨간 박스까지만)
6. 아래의 명령을 실행
sudo apt-get -y install cuda-[버전]
버전을 입력하지 않으면 설치했던 버전 중 가장 최신 버전이 자동으로 선택된다.
우리는 다운그레이드를 해야 하기 때문에 정확하게 버전을 명시해야 한다.
예를 들어 10.2 버전을 설치하는 경우
sudo apt-get -y install cuda-10-2
로 설치한다.
7. 환경변수 설정
sudo vi ~/.bashrc
가장 아랫줄에 다음을 추가 (10.2 기준)
export PATH=$PATH:/usr/local/cuda-10.2/bin
export CUDADIR=/usr/local/cuda-10.2
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/cuda-10.2/lib64
버전은 본인의 버전에 맞춰서 바꿔서 입력하면 된다.
:wq로 저장
8. 환경변수 불러오기
source ~/.bashrc
9. 버전 확인
nvcc -V
'인공지능' 카테고리의 다른 글
nan 혹은 말도 안되는 loss (0) | 2021.04.06 |
---|---|
Keras에서 GPU 제대로 쓰기 (0) | 2021.04.06 |
PyTorch 모델과 state_dict - 1 (0) | 2021.04.06 |