-
TensorFlow 설치 가이드(CUDA, NVIDIA 그래픽 드라이버 설치)개발 2020. 1. 7. 17:08
본 문서는 2018년에 작성되어 잘못된 부분이 있을 수 있습니다.
+ 최근 NVIDIA DOCKER를 이용하여 손쉽게 설치할 수 있는데 업데이트 하도록 하겠습니다.
개발 환경을 구성하기 위해 아래 명령어를 입력하여 GCC를 설치한다.
sudo yum groupinstall 'Development Tools'
sudo yum install kernel-devel-$(uname -r) kernel-headers-$(uname -r)
lspci | grep -i VGA
명령어를 입력하여 VGA정보를 확인한다.
Nouveau Driver 종료
텐서플로우 개발 환경 구성시 이 부분에서 많은 개발자들이 어려워 한다고 하니 유의한다.
lsmod | grep nouveau
명령어를 통해 NOUVEAU 그래픽 드라이브 로드여부를 확인한다. 출력되는 부분이 있으면 그래픽드라이버가 로드된 것이고 실행을 막기 위해 아래 절차를진행한다.
/etc/modprobe.d/blacklist-nouveau.conf 파일을 아래와 같이 작성한다
blacklist nouveau
options nouveau modeset=0
Kernel initramfs 재생성을 위해 아래 명령어를 입력한다.
sudo dracut --force
명령어를 입력한 뒤 수십초 기다린뒤 runlevel3로 재부팅한다.
# systemctl get-default // 현재 runlevel을 보여주기
systemctl set-default multi-user.target // 멀티유저(runlevel 3)으로 변경(이 명령을 입력한다.)
# systemctl set-default graphical.target // 그래피컬(runlevel 5)로 변경
재부팅 이후 runlevel 명령을 입력하여 레벨3로 변경되었는지 확인한다.
lsmod | grep nouveau 명령어를 입력하면 아무것도 안뜨는 것을 확인할 수 있다.
엔비디아 개발자 홈페이지의 다운로드>CUDA> Lagacy Release에서 CUDA9.0을 받도록 하자.
작성일 기준 2018년 5월 29일 9.2버전에서 텐서플로우가 제대로 작동하지 않는다는 이슈가 있어서 9.0 다운로드를 권장한다.
https://developer.nvidia.com/cuda-toolkit-archive
https://developer.nvidia.com/cuda-90-download-archive
타겟을 모두 맞추고 패치까지 모두 다운로드 받는다.
wget https://developer.nvidia.com/compute/cuda/9.0/Prod/local_installers/cuda_9.0.176_384.81_linux-run
wget https://developer.nvidia.com/compute/cuda/9.0/Prod/patches/1/cuda_9.0.176.1_linux-run
wget https://developer.nvidia.com/compute/cuda/9.0/Prod/patches/2/cuda_9.0.176.2_linux-run
sudo sh cuda_9.0.176_384.81_linux-run 명령어를 입력하여 CUDA를 설치한다.
드라이버 실패 설치시 NVIDIA홈페이지에서 DRIVER를 다시 받는다.
http://www.nvidia.co.kr/Download/Find.aspx?lang=kr
다운로드 받은 그래픽카드 드라이버 설치를 진행한다.
sh NVIDIA-Linux-x86_64-390.59.run
32비트 라이브러리 설치에도 동의, X config에도 동의한다.
드라이버를 적용하기 위해 재부팅을 해준다.
nvidia-smi 명령어로 정상적으로 그래픽 드라이버가 설치되었는지 확인한다.
설치가 완료되면 아래 명령어를 다시 실행한다.
modprobe --force-modversion nvidia-uvm
다시 다운로드 받은 cuda를 설치한다. 이때 driver설치를 진행하지 않는다.
sudo sh cuda_9.0.176_384.81_linux-run
설치가 완료되면 아래 명령어를 통해 패치도 설치한다.
sudo sh cuda_9.0.176.1_linux-run
sudo sh cuda_9.0.176.2_linux-run
설치가 완료되면 아래 명령을 통해 PATH설정을 해준다.
export PATH=/usr/local/cuda-9.0/bin${PATH:+:${PATH}}
export LD_LIBRARY_PATH=/usr/local/cuda-9.0/lib64\ ${LD_LIBRARY_PATH:+:${LD_LIBRARY_PATH}}
https://developer.nvidia.com/rdp/cudnn-download에서 cudnn을 다운로드 받는다. 이때 소셜로그인으로 로그인하여 다운로드 받으면 편하다. cuDNN v7.1.4 Library for Linux를다운로드.
tar -xzvf cudnn-9.0-linux-x64-v7.1.tgz 를 입력하여 다운로드 받은 cuDNN압축을 풀어주고 cuda라이브러리 폴더에 넣어준다. 이후 권한설정까지 진행한다.
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
[환경변수 설정]
export CUDA_HOME=/usr/local/cuda
복잡하게 다 설치했는데 NVIDIA-DOCKER 사용하시면 단 몇줄만에 설치할 수 있습니다. ㅠㅠ 이만 삽질의 일기였습니다!
'개발' 카테고리의 다른 글
티스토리에서 방문자숫자 표시하지 않기 (2) 2020.01.13 안드로이드 FCM을 사용하여 푸시하기 (2) 2020.01.08 PHP Myadmin설치하기 (2) 2020.01.07 패키지 업데이트 진행하기&PHP7.1 설치 (2) 2020.01.07 MariaDB설치 (2) 2020.01.07