본문 바로가기

일상

Ubuntu 그래픽 카드 드라이버 & Cuda & cudnn 설치

우분투를 처음 다운 받으시면

화면이 엄청 큰 로그인창이 보이실 겁니다

"내가 뭐 잘못 설치 했나?" 싶으실텐데 당연한 일이니 걱정 안하셔도 됩니다 ㅎㅎ

 

그래서 그래픽 카드 설치부터 Cudnn까지 같이 설치해 봅시다 ~

 


먼저 그래픽 카드

대부분이 nvidia 그래픽 카드를 사용할 것입니다

근데 이게 참 호환성이 드럽게 안좋다고 우분투 만드신 분이 언급 하셨던거 같아요

 

잡소리는 집어치우고 본론으로 들어가겠습니다

다들 컴퓨터의 그래픽 카드가 어떤건지 알아야합니다

제가 있는 랩실 컴퓨터는 RTX-2070 집컴은 GTX-1660SUPER

이렇게 사람처럼 그래픽 카드도 이름을 가지고있어요 

이걸 기억하시고 Nvidia 홈페이지로 이동합니다.

 

https://www.nvidia.com/download/index.aspx?lang=en-us

 

Download Drivers | NVIDIA

 

www.nvidia.com

 

들어가시면

다음과 같이 어떤 버전 "너의 운영체제는 무엇이니?" 등을 선택해야합니다

 

 

예시로 제의 랩실컴퓨터 기준으로 해보겠습니다.

이렇게 하시고 SEARCH 버튼을 클릭 해줍니다.

이제 다운로드를 눌러줍니다 

한번 쉼호흡하세요~ 

용량이 136MB라 얕보시면 안되요 다운로드 시간 보시면 "오늘 너가 이거 설치 할 수 있을거 같아?" 라고 컴퓨터가 물어보는 거같이 9시간 정도가 찍혀있을거에요 (물론 저만그런걸 수도 있겠죠..ㅠ)

 

다운로드를 완료하시면 

 

이제 명령어로 설치를 해볼까요~

먼저 (ctrl + alt + f1)  키를 눌러서 커맨드 모드로 진입합니다

 

그다음 이제 여러분이 설정한 아이디와 비밀번호를 입력해서 접속합니다 

이제 lightdm을 명령어로 꺼줍니다

$sudo service lightdm stop

 

이제 그래픽카드 드라이브설치 파일이 있는 경로로 이동합니다

ex) $ cd ~/Downloads

 

권한 부여

$chmod +x ./NVIDIA-Linux-x86_64-440.82.run

(NVIDIA-Linux-x86_64-440.82.run 여기서 굵은 글씨 된 부분(x86_64-440.82)은 사람마다 다를 겁니다 저의 컴퓨터로 예시를 든것이니 응용하셔서 사용하시길 바랍니다.)

 

설치

$sudo sh ./NVIDIA-Linux-x86_64-440.82.run

안되면 

$sudo ./NVIDIA-Linux-x86_64-440.82.run

 

설치화면이 나올텐데 이부분은 저보다 영어를 여러분들이 잘하시니 어렵지 않게 하실수 있으실 것입니다.

 

마지막으로 디스플레이를 다시 켜볼까요

$sudo service lightdm start

 

 

이제 설치가 완료됬으면

확인해 볼까요?

$nvidia-smi

를 쓰면 여러분 컴퓨터의 그래픽 카드 정보를 볼 수 있습니다.

 

자 그래픽카드는 설치 완료!


자 우리의 쿠다 행님을 설치 해볼까요 머신러닝을 쥐피유로 할려면 필요한 행님이죠

 

 

CUDA 설치시 다음과 같은 dependency를 항상 pull 해온다고 보장할 수 없기 때문에 미리 설치해두는 것이 좋습니다.

$sudo apt-get update
$sudo apt-get install build-essential dkms
$sudo apt-get install freeglut3 freeglut3-dev libxi-dev libxmu-dev

 

 

저의 Gpu는 10.2가 필요하니 밑에 싸이트에 들어가셔서 본인에게 맞는 cuda를 설치과정을 따라합시다

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

 

 

본인의 컴퓨터 설정에 맞게 클릭하시면

저자의 컴퓨터 예시

밑에 명령어를 차례대로 치라고 나옵니다.

deb (local), deb(network)는 다음과 같이 따라하면 설치가 될것입니다.

 

#참고사항 (2020.06 기준 글쓴이의 상황)

저의 cuda는 10.2를 설치해야하는 상황에서 deb를 command line에서 따라 타이핑을 하여 설치를 하였습니다

그렇지만 최근의 11.0 버전이 출시한 뒤 갑자기 11.0이 설치되어서 그래픽 카드 충돌 문제가 일어난 적이 있었습니다.

(바보같은 저는 고칠방법을 찾지못해 깔끔히 다시 지웠다고 합니다 ㅜ.ㅜ)

 

 

안전하게 설치하고 싶어서 저는 runfile을 다운 받았습니다.

2번째 명령어를 실행하면

다음과 같은 창이 나타납니다 여기서 accept 를 타이핑한뒤 enter를 누르면

다음과 같은 창이 보일 것입니다 [X] 표시가 설치하겠다는 의미이며

저의 경우에는 이미 그래픽 드라이버를 설치했기때문에 맨위를 해제한 뒤 

install을 눌러줍니다

 

이제 cuda 도 끝~

그러면 명령어를 통해 잘 설치 됬는지 확인 해볼까요?

 

$nvcc --version

을 하면 보통 nvcc를 못찾는 오류와 함께 명령어를 추천해줍니다

nvidia-cuda-toolkit을 설치하라고

 

절대 ! 절대 ! 절대 ! 그 명령어를 통해 설치하시면 안됩니다 !!!!!!!!!!!!!!!

 

저도 "어 설치가 덜 됬나?" 하고 설치했는데 

설치하시면 7.5버전의 쿠다가 설치됩니다 = 조져스키..

호환이 안맞는다고 nvidia-smi 명령어도 안되고 이것저것 많이 꼬일 것입니다.

일단 잘설치 됬는지 확인하는 방법은 /usr/local 경로에 cuda관련 폴더들이 있으면 정상 설치 된겁니다.

 

여기서 우리가해야할것은 

~(home directory) 에 있는 .bashrc파일을 수정해줍니다

$ gedit ~/.bashrc

 

 

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

 

내용을 추가해줍니다.

그리고 저장해 준 뒤

$ source ~/.bashrc

명령어를 실행하고 다시 

$nvcc --version

명령어를 쳐보면 잘 동작하는 걸 볼 수 있습니다.

 

이상으로 cuda도 진짜 끝~!


마지막 cudnn

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

요눔시키는 다운받을라면 회원가입을 해야한다.

 

우분투회원 가입한 뒤 들어가면 위와 같은 화면이 나온다

이제 본인의 CUDA버전과 OS와 맞는 cudnn을 골라서 설치하면 된다

cuDnn Library for Linux 을 눌러 압축 파일을 설치한다

 

그폴더에 가서 압축파일을 풀고  gui로 할 수도 있고

$ tar -xzvf cudnn-10.2-linux-x64-v7.6.5.32.tgz

다음과 같이 명령어로 풀수도 있다.

 

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

 

$ sudo apt-get install libcupti-dev

 

위에서 .bashrc 파일에 export 시켰으므로 cudnn도 끝이다

 

$ cat /usr/local/cuda/include/cudnn.h | grep CUDNN_MAJOR -A 2

(cudnn 8버전이후 cudnn.h > cudnn_version.h에서 확인 가능)

$ cat /usr/local/cuda/include/cudnn_version.h | grep CUDNN_MAJOR -A 2

 

을 출력해보면

 

다음과 같다. 7.6.5 버전이라는 뜻

 

 

이상으로 드라이버 & cuda & cudnn  설치를 마무리하겠다.