근황 토크 및 자유게시판

[Ubuntu 22.04] Nvidia driver & Cuda 설치

scone 2023. 3. 2. 11:39

설치 환경

  • Ubuntu 22.04
  • RTX A5000

 

NVIDIA Driver 설치

https://pstudio411.tistory.com/entry/Ubuntu-2004-Nvidia%EB%93%9C%EB%9D%BC%EC%9D%B4%EB%B2%84-%EC%84%A4%EC%B9%98%ED%95%98%EA%B8%B0

 

apt 최신버전으로 업글

sudo apt-get update
sudo apt-get upgrade

개발에 필수적인 라이브러리들 설치하는 코드

sudo apt-get install build-essential

사용중인 그래픽카드 확인

설치 가능한 nvidia 드라이버 확인

우분투 22.04 버전이 안정적이냐 아니냐는 nivida driver와 밀접한 연관이 있다고 합니다.

22.04는 작년까지만 해도 안정적이지 않은 것 같다라는 말들이 있었는데, 올해부터는 괜찮아진 것 같다고 합니다.

최신 버전인 525를 설치해주었습니다.

sudo apt install nvidia-driver-525

nvidia kernel module의 load를 도와주는 패키지

sudo apt-get install dkms nvidia-modprobe
sudo apt-get update
sudo apt-get upgrade

 

재부팅 후 설치 확인

 

Cuda 설치

  • Pytorch에 Cuda 11.7이 마침 공식 지원으로 들어왔길래 11.7로 설치를 진행한다.
  • Linux > x86_64 > Ubuntu > 22.04 > runfile(local)

https://developer.nvidia.com/cuda-11-7-1-download-archive?target_os=Linux&target_arch=x86_64&Distribution=Ubuntu&target_version=22.04&target_type=deb_local 

 

CUDA Toolkit 11.7 Update 1 Downloads

Resources CUDA Documentation/Release NotesMacOS Tools Training Sample Code Forums Archive of Previous CUDA Releases FAQ Open Source PackagesSubmit a BugTarball and Zip Archive Deliverables

developer.nvidia.com

https://callmescone.tistory.com/275

 

환경 패스 설정

  • 경로 잘 체크해서 해주어야 합니다.
sudo sh -c "echo 'export PATH=$PATH:/usr/local/cuda-11.7/bin'>> /etc/profile"
sudo sh -c "echo 'export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/cuda-11.7/lib64'>> /etc/profile"
sudo sh -c "echo 'export CUDARDIR=/usr/local/cuda-11.7'>> /etc/profile"
source /etc/profile

설치 확인

CudNN 설치

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

local Installer for linux x86_64(tar)

 

압축 해제 후 파일 복사

tar -xvf cudnn-linux-x86_64-8.7.0.84_cuda11-archive.tar.xz
sudo cp cudnn-linux-x86_64-8.7.0.84_cuda11-archive/include/cudnn* /usr/local/cuda/include
sudo cp cudnn-linux-x86_64-8.7.0.84_cuda11-archive/lib/libcudnn* /usr/local/cuda/lib64
sudo chmod a+r /usr/local/cuda/include/cudnn.h /usr/local/cuda/lib64/libcudnn*

sudo ln -sf /usr/local/cuda-11/targets/x86_64-linux/lib/libcudnn_adv_train.so.8.4.1 /usr/local/cuda-11/targets/x86_64-linux/lib/libcudnn_adv_train.so.8
sudo ln -sf /usr/local/cuda-11/targets/x86_64-linux/lib/libcudnn_ops_infer.so.8.4.1  /usr/local/cuda-11/targets/x86_64-linux/lib/libcudnn_ops_infer.so.8
sudo ln -sf /usr/local/cuda-11/targets/x86_64-linux/lib/libcudnn_cnn_train.so.8.4.1  /usr/local/cuda-11/targets/x86_64-linux/lib/libcudnn_cnn_train.so.8
sudo ln -sf /usr/local/cuda-11/targets/x86_64-linux/lib/libcudnn_adv_infer.so.8.4.1  /usr/local/cuda-11/targets/x86_64-linux/lib/libcudnn_adv_infer.so.8
sudo ln -sf /usr/local/cuda-11/targets/x86_64-linux/lib/libcudnn_ops_train.so.8.4.1  /usr/local/cuda-11/targets/x86_64-linux/lib/libcudnn_ops_train.so.8
sudo ln -sf /usr/local/cuda-11/targets/x86_64-linux/lib/libcudnn_cnn_infer.so.8.4.1 /usr/local/cuda-11/targets/x86_64-linux/lib/libcudnn_cnn_infer.so.8
sudo ln -sf /usr/local/cuda-11/targets/x86_64-linux/lib/libcudnn.so.8.4.1 /usr/local/cuda-11/targets/x86_64-linux/lib/libcudnn.so.8

 

설치 확인

ldconfig -N -v $(sed 's/:/ /' <<< $LD_LIBRARY_PATH) 2>/dev/null | grep libcudnn

 

SKIPPED ..?? 이거 왜 뜨는건지 모르겠네요.

 

가상 환경 만들어서 테스트

참고한 블로그 : https://chaloalto.tistory.com/38

sudo apt install python3-venv

가상환경을 세팅할 경로로 가서 가상환경 만들기

python3 -m venv venv

참조 : https://callmescone.tistory.com/274

 

pip upgrade

pip3 install --upgrade pip

 

가상 환경 내에 pytorch 설치

가상 환경 내에 tensorflow 설치

pip install tensorflow

 

아래 git을 clone 하여 check.py 를 실행시켜줘봤습니다.

https://github.com/changhwanjoe/check_tensorfow-gpu

 

 

GPU monitoring

https://velog.io/@claude_ssim/NVIDIA-GPU-%EB%B3%B4%EB%8A%94%EB%B2%95nvidia-smi

watch -d -n 0.5 nvidia-smi

학습 실행

python check.py

2 ~24 % 찍히는거 보니깐 GPU가 잘 쓰이는 모양입니다.