■ 참고문헌
- https://medium.com/@cjanze/how-to-install-tensorflow-with-gpu-support-on-ubuntu-18-04-lts-with-cuda-10-nvidia-gpu-312a693744b5
- https://medium.com/@vitali.usau/install-cuda-10-0-cudnn-7-3-and-build-tensorflow-gpu-from-source-on-ubuntu-18-04-3daf720b83fe
■ 본문
내가 window 환경에서 keras를 하다가 ubuntu로 넘어온 이유는 사람들이 더좋다고해서 일단 한번 시도해 본 것이었다. 근데 다 깔고 똑같은 코드를 실행해보니까 속도면에서 참이가 심했다. (체감 2배?) 그래서 앞으로는 ubuntu 환경에서 keras를 돌릴 것이다. 그리고 나와 같이 ubuntu 18.04 환경에서 keras를 설치하는 분들을 위해 정말 포맷을 2번하고, 엄청난 스트레스를 받으면 결과적으로 가장 잘 오류없이 실행되는 과정을 정리해본다.
그 첫번째 과정으로 CUDA 10.0과 cuDNN 7.5 설치이다. 사실 Anaconda에서 python3.5.6 버전으로 가상환경을 만든다음에 tensorflow-gpu와 keras를 설치하는데, 이때는 CUDA와 cuDNN이 root에 설치된 버전과 다르게 들어가는 것 같다. 사실 정확히는 모른다. ㅎㅎㅎ
암튼, 그냥 이렇게 저렇게 하는 과정에서 제일 최신버전으로 설치를 하였기 때문에 일단 CUDA 10.0과 cuDNN 7.5를 설치하는 과정을 서술한다.
■ CUDA 10.0 설치
일단, CUDA와 cuDNN을 설치하기 전에, 최신 그래픽 드라이버를 다운받아야하고, 그건 내가 이전에 포스팅한 글에서 방법을 볼 수 있다.
이제 CUDA 10.0 버전을 NVIDIA 사이트에서 다운받는다. 그럼 ~/Downloads 폴더에 deb 파일이 다운받아질 것이다. 그럼 홈페이지에도 나와있듯이 아래의 과정을 통해서 cuda 설치를 한다.
$ cd ~/Downloads
$ sudo dpkg -i cuda-repo-ubuntu1804-10-0-local-10.0.130-410.48_1.0-1_amd64.deb
$ sudo apt-key add /var/cuda-repo-<version>/7fa2af80.pub
$ sudo apt-get update
$ sudo apt-get install cuda
설치하는데 상당한 시간이 소요 될 것입니다. 그때 그럼 일단 cuDNN을 다운받아 놓죠. 이것도 홈페이지에 가서 다운받습니다. 근데 cuDNN의 경우 홈페이지 아이디가 있어야 다운 받을 수 있는거 같으니, 가입해서 로그인해서 CUDA 10.0 버전에 맞는 cuDNN을 다운받습니다.
CUDA 설치 과정이 다 끝나면 bashrc에 아래의 두 줄을 추가해줍니다.(nano, gedit 아무거나 사용 / 저는 gedit을 선호합니다)
$ gedit ~/.bashrc
export PATH=/usr/local/cuda-10.0/bin${PATH:+:${PATH}}
export LD_LIBRARY_PATH=/usr/local/cuda-10.0/lib64${LD_LIBRARY_PATH:+:${LD_LIBRARY_PATH}}
다음으로 재부팅을 한번 진행해주시고~
$ reboot
아래의 명령어를 통해 설치 확인을 진행합니다.
$ cat /proc/driver/nvidia/version
$ nvcc -V
이러면 아마 cuda release 10.0이 뜰겁니다!!!! 마지막 과정으로 예제를 실행해서 제대로 설치되었는지 한번 확인해봅니다.
$ cd /usr/local/cuda-10.0/samples
$ sudo make
$ cd bin/x86_64/linux/release
$ ./deviceQuery
$ ./bandwidthTest
에러없이 수행되면 성공한 것입니다~!!! 근데 bandwidthTest의 경우, 그래픽카드 메모리가 가득차면 에러가 발생하더라구요.(OUT_OF_MEMORY / 이건 학습 수행 중에도 제대로 종료를 시키지 않으면 발생하니까, 잘 기억해두고 사용하세요!) 그래픽카드 메모리 확인 및 clear 방법은 제 포스팅 링크에서 확인할 수 있습니다.
■ cuDNN 7.5 설치
자! CUDA 설치가 완료되었으니, 이제 cuDNN 7.5를 설치해봅시다. CUDA 10에 맞는 cuDNN 7.5 앞에서 설치 기다리는 중 홈페이지에서 다운받았을 것이라고 생각하지만 혹시 없으실까봐 링크를 다시해드리겠습니다. 다운을 위해서 회원가입 및 로그인도 하셔야합니다!!!
설치를 위해서 3가지 deb 파일을 다운받습니다.
그런다음 ~/Downloads 로 돌아가, 실행시켜 주면 끝~ 참 쉽죠잉~
$ cd ~/Downloads/
$ sudo dpkg -i libcudnn7_7.5.0.56-1+cuda10.0_amd64.deb
$ sudo dpkg -i libcudnn7-dev_7.5.0.56-1+cuda10.0_amd64.deb
$ sudo dpkg -i libcudnn7-doc_7.5.0.56-1+cuda10.0_amd64.deb
설치는 정말 간단하게 몇줄씩 출력되면서 끝납니다. 설치 완료 후, CUDA에서와 마찬가지로 예제를 실행해봅시다.
$ cd /usr/src/cudnn_samples_v7/mnistCUDNN/
$ sudo make clean && sudo make
$ ./mnistCUDNN
하!지!만! 여기서 분명 에러가 발생할 것입니다. ㅎㅎㅎㅎㅎㅎㅎㅎ 아닐수도 있지만, 저는 포맷 2번하고 할때마다 에러가 뜨더라구요. 해결방법은 간단합니다. cudnn.h 파일에서 "driver_types.h " 을 <driver_types.h>로 변경해서 저장하면 끝!
$ cd /usr/include/
$ sudo gedit cudnn.h
이렇게 변경해주고 다시 make 및 실행을 해주면 잘 돌아갈 것입니다.!!!
이번 포스팅을 통해서 CUDA 10.0과 cuDNN 7.5 설치 방법에 대해서 알아보았습니다. 하다가 틀린 곳도 이상하게 안되는 부분도 있을테니, 적극적으로 공유 및 댓글 달아주시면 같이 공부해보겠습니다.
다음 포스팅에서는 Anaconda 설치 및 가상 환경 구축에 대해서 알아보겠습니다.
'리눅스환경' 카테고리의 다른 글
[Ubuntu 18.04] conda 가상환경에서 tensorflow-gpu / keras / jupyter notebook 설치 (2) | 2019.04.19 |
---|---|
[Ubuntu 18.04] Anaconda 설치 및 가상환경 구축 (0) | 2019.04.19 |
[Ubuntu 18.04] 한글 입력 추가 및 한영키 사용 설정 (8) | 2019.04.17 |
[Ubuntu 18.04] 고정 ip 설정 (0) | 2019.04.17 |
[Ubuntu 18.04] 최신 그래픽 드라이버 설치 (0) | 2019.04.17 |