우분투 cuda 재설치 - ubuntu cuda jaeseolchi

Cuda Remove

sudo apt-get --purge remove 'cuda*'

sudo apt-get autoremove --purge 'cuda*'

/usr/local/ 폴더에 cuda 폴더가 남아있으면 지워주자

cuda든 cuda_9.x 든 뭐든 몽땅!

CUDA 설치

https://developer.nvidia.com/cuda-toolkit-archive

깔고자 하는 버전을 선택하여 .run file 다운로드

빨간 글씨는 버전에 맞게 수정하여 실행

cd ~/Downloads/

sudo mv cuda_10.0*.* ~/

sudo chmod +x cuda_10.0*.*

./cuda_10.0.176_384.81_linux.run --override

EULA License에서는 그래픽드라이버는 설치하지 말고,

Samples도 설치하지 말고,

Toolkit 설치!

CUDNN 설치

https://developer.nvidia.com/rdp/cudnn-download

cuDNN Library for Linux

Cuda에 맞는 버전 찾아서 다운로드

cd ~/Downloads/

sudo mv cudnn-10.0*.* /usr/local/cuda-10.0

cd /usr/local/cuda-10.0

sudo tar -zxvf cudnn-10.0*.*

sudo cp -P cuda/lib64/libcudnn* /usr/local/cuda-10.0/lib64/

sudo cp cuda/include/cudnn.h /usr/local/cuda-10.0/include/

sudo chmod a+r /usr/local/cuda-10.0/include/cudnn.h /usr/local/cuda/lib64/libcudnn*

libcupti 설치해주자

sudo apt-get install libcupti-dev

환경변수 설정 해주자

~/.bashrc 파일을 수정하여 환경변수를 설정해준다. 필자는 vim 프로그램을 사용하였다.

sudo vim ~/.bashrc

아래 내용을 파일 맨 아랫 부분에 추가해준다.

export PATH=/usr/local/cuda-10.0/bin${PATH:+:${PATH}} export LD_LIBRARY_PATH=/usr/local/cuda/lib64${LD_LIBRARY_PATH:+:${LD_LIBRARY_PATH}}

아래 명령어를 통해 환경변수 설정을 완료한다.

source ~/.bashrc

업데이트: August 27, 2021

(2021-08-27) 기준

환경 확인

Environment

  • OS: Ubuntu 20.04
  • GPU: RTX3090
  • Architecture: x86_64

설치하는 파일들

  • CUDA 11.2.2
  • cuDNN 8.1.1

CUDA 설치

0. 재설치의 경우

  • 이전에 설치되어있는 cuda를 먼저 삭제해야한다

      sudo apt-get purge nvidia* 
      sudo apt-get autoremove
      sudo apt-get autoclean
      sudo rm -rf /usr/local/cuda*
    

  • /usr/local/ 폴더에 cuda 뭔가가 남아있음 지운다

1. 설치

https://developer.nvidia.com/cuda-toolkit-archive 에 접속해서 원하는 버전의 쿠다를 선택한다

  • 다음과 같이 세팅을 하고

    우분투 cuda 재설치 - ubuntu cuda jaeseolchi

  • 아래에 나오는 명령어를 입력한다

    우분투 cuda 재설치 - ubuntu cuda jaeseolchi

      # 설치 실행
      $ wget https://developer.download.nvidia.com/compute/cuda/11.2.2/local_installers/cuda_11.2.2_460.32.03_linux.run
      $ sudo sh cuda_11.2.2_460.32.03_linux.run
    

1.1. 에러가 발생한 경우 (“Building kernel modules”~)

  • /var/log/cuda-installer.log에서

      [INFO]: Finished with code: 256
      [ERROR]: Install of driver component failed.
      [ERROR]: Install of 460.32.03 failed, quitting
    

  • /var/log/nvidia-installer.log를 보니 다음과 같은 에러가 나왔다.

    우분투 cuda 재설치 - ubuntu cuda jaeseolchi

  • 한참을 해매다 버전에 맞는 nvidia-driver를 먼저 설치하고 실행하기로 했다.

      # 버전에 맞는 nvidia driver를 먼저 설치하고 실행한다
      sudo apt install nvidia-driver-460
      # 설치 실행
      sudo sh cuda_11.2.2_460.32.03_linux.run
    

    실행 후 아래처럼 driver를 선택해제하고 설치한다.

    우분투 cuda 재설치 - ubuntu cuda jaeseolchi

2. 설치 후

  • .bashrc에 다음과 같은 내용을 넣는다

      # >>> cuda 11.2 >>>
    
      export PATH=/usr/local/cuda-11.2/bin${PATH:+:${PATH}}
      export LD_LIBRARY_PATH=/usr/local/cuda/lib64:${LD_LIBRARY_PATH:+:${LD_LIBRARY_PATH}}
    
      # << cuda 11.2 <<
    

  • .bashrc를 실행시키고 설치가 잘 되었는지 확인한다

      $ source ~/.bashrc
      $ nvcc --version
      nvcc: NVIDIA (R) Cuda compiler driver
      Copyright (c) 2005-2021 NVIDIA Corporation
      Built on Sun_Feb_14_21:12:58_PST_2021
      Cuda compilation tools, release 11.2, V11.2.152
      Build cuda_11.2.r11.2/compiler.29618528_0
    

cuDNN 설치

  • cuDNN은 그래픽카드 가속을 도와주는 library이다. 따로 다운받아서 경로 설정을 해주어야한다.
  • https://developer.nvidia.com/cudnn 접속
  • download cuDNN 클릭

    우분투 cuda 재설치 - ubuntu cuda jaeseolchi

  • 로그인/회원가입 후 설치한 CUDA와 호환되는 버전 다운로드 (최신 버전말고 archive에서 8.1.1을 찾아서 다운받았다)

    우분투 cuda 재설치 - ubuntu cuda jaeseolchi

  • 압축해제

      tar –xzvf cudnn-11.2-linux-x64-v8.1.1.33.tgz
    

  • 설치

      sudo cp cuda/include/cudnn*.h /usr/local/cuda/include
      sudo cp -P cuda/lib64/libcudnn* /usr/local/cuda/lib64
      sudo chmod a+r /usr/local/cuda/include/cudnn*.h /usr/local/cuda/lib64/libcudnn*
    

  • 설치 확인

      cat /usr/local/cuda/include/cudnn_version.h | grep CUDNN_MAJOR -A 2
      ldconfig -N -v $(sed 's/:/ /' <<< $LD_LIBRARY_PATH) 2>/dev/null | grep libcudnn
    

    우분투 cuda 재설치 - ubuntu cuda jaeseolchi

    우분투 cuda 재설치 - ubuntu cuda jaeseolchi

Reference

  • https://webnautes.tistory.com/1479
  • https://soundprovider.tistory.com/entry/Ubuntu에서-CUDA-완전-삭제-명령어