ubuntu 20.04 에서 nvidia GPU 및 CNN 설정 삽질기 2021-12-3일 [ Cuda 10.1 설정하면 문제 생김]

     우분투 설정에서 ubuntu 20.04 에서 nvidia  GPU 붙이기가 가장 어렵다.   수없이 많은 날들을 삽질을 하다가,  성공하는데,  그런데,  이번에는 내가 생각 하였던 것보다 어렵지 않게 설정 되었다.

항상 설치 하려고 하면 이런 메시지만 지속적으로 발생 하였다. 

> nvidia-smi 

“NVIDIA-SMI has failed because it couldn’t communicate with the NVIDIA driver” 


ubuntu 18.04 버전에서는 상당히 복잡하였는데,  아래와 같이 설치 되었다. 


nvidia 설정 완료

실제 설치는 아래의 사이트를 참고 하였다. 

https://modernflow.tistory.com/11


첫번째 기존에 설치된 nvidia와 cuda  제거

sudo apt-get remove --purge '^nvidia-.*' 

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


두번째 Cuda 10.1 install  및 확인  

sudo apt install nvidia-cuda-toolkit

쿠다 버전 확인 

nvcc -V

cuda 10.1  버전

세번째 Cudnn 설치  

Download cuDNN v7.6.5 for cuda 10.1에 있는 cuDNN Library for Linux 를 다운 받는다. 

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

위의 링크가서 

Cudnn   다운로드


여기에서 어려웠던 것은 로그인 즉 인증 하는 것이다.   어찌 등등 어렵게 인증 하였다. 

다운로드 받았던 경로에서 아래와 같이 압축을 풀어 준다. 

tar -xvzf cudnn-10.1-linux-x64-v7.6.5.32.tgz


네번째  Cudnn 복사 및 권한 설정 

# 복사

sudo cp cuda/include/cudnn.h /usr/lib/cuda/include/

sudo cp cuda/lib64/libcudnn* /usr/lib/cuda/lib64/

# 권한설정

sudo chmod a+r /usr/lib/cuda/include/cudnn.h 

sudo chmod a+r /usr/lib/cuda/lib64/libcudnn*


다섯번째  환경변수 등록 및 적용

# bash shell  Users

sudo vim~/.bashrc


----------------------

맨 아래줄에 입력해줍니다.

#CUDA ENV


export LD_LIBRARY_PATH=/usr/lib/cuda/lib64:$LD_LIBRARY_PATH

export LD_LIBRARY_PATH=/usr/lib/cuda/include:$LD_LIBRARY_PATH


환경 변수를 적용 시킨다. 

source ~/.bashrc


여섯번째  nvidia driver 를 설치 한다. 

# 설치 가능한 버전 체크

ubuntu-drivers devices

nvidia 470이 추천 되었다. 


그래서 아래와 같이 recommended 설치 하였다. 

sudo apt install nvidia-driver-470


여기에서 재부팅 하면 된다. 

sudo reboot


그러면 cuda 설정이 완료된다. nvidia-smi로 확인 하면 끝나는 것을 볼 수 있다. 

그런데 이것으로 하니,  tensorflow 속도가 매우 느렸다.   다른 방식으로 해봐야 할 것 같다.

 아래와 같은 이슈가 있으니,  잘 확인 하고 설치 해야 한다. 

https://stackoverflow.com/questions/67591142/tensorflow-gpu-taking-too-long

그리고 아래의 링크를 보면 이슈를 해결한 블로그가 있다. 

https://rdmkyg.blogspot.com/2021/12/ubuntu-1804-rtx3080-gpu-tensor-flow-24.html



댓글 없음:

댓글 쓰기

css cheat sheet 클래스 선택자, margin(마진), display , center 조정 간단한 구성 요소

 앞에서는 html의 간단한 sheet를 소개 하였습니다.   html은  주로 골격을 나타나는 것이라, 디자인을 하는데는 css로 하여야 합니다.  아래 코드와 같이 css 관련 하여 매우 간단하게 코딩 하겠습니다.  body 부분의 css 코딩  ...