Ubuntu 20.04 CUDA 11.2 설치
업데이트:
(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 에 접속해서 원하는 버전의 쿠다를 선택한다
- 다음과 같이 세팅을 하고
- 아래에 나오는 명령어를 입력한다
# 설치 실행 $ 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를 보니 다음과 같은 에러가 나왔다.
-
한참을 해매다 버전에 맞는 nvidia-driver를 먼저 설치하고 실행하기로 했다.
# 버전에 맞는 nvidia driver를 먼저 설치하고 실행한다 sudo apt install nvidia-driver-460 # 설치 실행 sudo sh cuda_11.2.2_460.32.03_linux.run
실행 후 아래처럼 driver를 선택해제하고 설치한다.
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와 호환되는 버전 다운로드
(최신 버전말고 archive에서 8.1.1을 찾아서 다운받았다)
-
압축해제
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
댓글남기기