열정/연구 일지

CUDA 프로그래밍을 위한 Nvidia Driver, CUDA Toolkit, cuDNN 설치 및 GPU 사용 방법

lime9 2024. 7. 4. 16:35

서버에서 CUDA를 사용하기 위해 CUDA 설치를 진행해주었다.

사용한 GPU는 RTX 4090 x 1 이다.

 

1. NVIDIA Driver 설치

먼저 NVIDIA Driver를 설치해준다. Ubuntu 메뉴에서 Software & updates로 들어간다.

추가 드라이버(Additional Drivers)로 들어가면 사용할 수 있는 여러 드라이버가 나올 것이다. 그중 가장 위에 (독점, 확인함)으로 표시되어 있는 드라이버를 선택하면 된다.

선택 후, 바뀐 내용 적용(Apply Changes)를 선택하여 설치를 완료해주면 된다.

Software & Updates > Additional Drivers > Using NVIDIA drivier (proprietary, tested) > Apply Changes > Close

2. CUDA Toolkit 설치

PyTorch에서 지원하는 CUDA 버전의 설치를 진행한다. 먼저 아래의  PyTorch 홈페이지에 접속하여 지원하는 CUDA 버전을 확인한다.

https://pytorch.org/get-started/locally/

 

Start Locally

Start Locally

pytorch.org

 

나는 CUDA 12.1 버전과 호환되는 PyTorch 패키지를 설치해준다. 아래 command를 그대로 복사하여 터미널에 붙여넣으면 된다.

pip3 install torch torchvision torchaudio

 

 

다음으로 CUDA Toolkit을 설치해주기 위해 Nvidia developer 홈페이지에 접속한다.

https://developer.nvidia.com/cuda-downloads

 

CUDA Toolkit 12.1 Downloads

Get the latest feature updates to NVIDIA's proprietary compute stack.

developer.nvidia.com

 

원하는 버전을 설치하면 되는데, 나는 가장 최신 버전의 Toolkit인 CUDA 12.5 버전을 다운로드 받았다.

 

이렇게 나의 시스템 정보에 맞게 선택해주고, Installer Type은 runfile (local)을 선택해준다. deb 파일은 나의 드라이버와 호환되는 버전인지 체크하지 않고 진행하기 때문에 runfile로 진행해주는 것이 추후 충돌을 막아줄 수 있다.

이렇게 버전 체크를 해주면 아래에서 설치 명령어를 확인해줄 수 있다. 그대로 복사하여 터미널에 붙여넣어주면 된다.

wget https://developer.download.nvidia.com/compute/cuda/12.5.1/local_installers/cuda_12.5.1_555.42.06_linux.run
sudo sh cuda_12.5.1_555.42.06_linux.run

CUDA Toolkit 설치 진행 과정

 

설치가 완료되면 해당 디렉토리에 cuda_[version]_linux.run 파일이 생성되었을 것이다.

다음의 명령어를 통해 실행해준다 (다른 버전을 설치하였다면 그 파일명을 입력해주면 된다).

sudo sh cuda_12.5.1_555.42.06_linux.run

설치 전 몇 가지 준비 단계가 있다. 'accept'를 입력 후 enter를 눌러준다.

Driver는 방금 위에서 설치했으므로 CUDA Toolkit만 선택하여 Install을 진행한다.

아래와 같이 Update를 진행할 것이냐는 창이 뜨면 'No'를 눌러준다. 가장 최신 버전으로 남겨주기 위함이다.

위 과정이 정상적으로 실행됐다면 아래와 같이 출력된다. CUDA 설치가 완료되었다.

 

이후 환경변수를 추가해주어야 한다. 다음의 명령어를 실행한다. 위의 창에서 Please make sure that ... 이후에 나오는 PATH를 include해주는 과정이다.

sudo sh -c "echo 'export PATH=$PATH:/usr/local/cuda-12.5/bin' >> /etc/profile"
sudo sh -c "echo 'export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/cuda-12.5/lib64' >> /etc/profile"
sudo sh -c "echo 'export CUDADIR=/usr/local/cuda-12.5' >> /etc/profile"
source /etc/profile

 

설치 확인을 위해서 아래의 명령어를 입력해보자.

nvcc -V

 

이렇게 12.5 버전이 확인되어야 한다.

3. cuDNN 설치

Nvidia developer의 cuDNN 페이지에 접속하고, download cuDNN library를 선택한다.

https://developer.nvidia.com/cudnn

 

CUDA Deep Neural Network

cuDNN provides researchers and developers with high-performance GPU acceleration.

developer.nvidia.com

 

Archive of Previous Releases에서 이전 버전을 다운로드 받거나, 가장 최신버전을 다운로드 받으면 된다.

나는 가장 최신버전인 cuDNN 9.2.1 deb(local)을 다운로드 받았다.

 

아래 명령어를 터미널에 입력하여 설치를 진행해주면 된다.

wget https://developer.download.nvidia.com/compute/cudnn/9.2.1/local_installers/cudnn-local-repo-ubuntu2204-9.2.1_1.0-1_amd64.deb
sudo cp /var/cudnn-local-repo-ubuntu2204-9.2.1/cudnn-local-643687A8-keyring.gpg /usr/share/keyrings/
sudo dpkg -i cudnn-local-repo-ubuntu2204-9.2.1_1.0-1_amd64.deb
sudo cp /var/cudnn-local-repo-ubuntu2204-9.2.1/cudnn-*-keyring.gpg /usr/share/keyrings/
sudo apt-get update
sudo apt-get -y install cudnn

 

cuDNN 설치는 12 버전이므로 아래의 명령어로 수행한다.

sudo apt-get -y install cudnn-cuda-12