TensorFlow-GPU 환경 구축 2018년 3월
10218 단어 환경 구축리눅스TensorFlowCUDA기계 학습
소개
기계 학습 시스템의 환경을 정기적으로 처음부터 다시 만들려고합니다.
그래서 얻은 노하우를 기록에 남겨두고 싶다.
새로 설치한 Linux로 작업
로컬 머신으로 사용하는 가정
Linux Mint 18.3 Cinnamon 64-bit
Ubuntu 16.04 하지만 어쩌면 같은 방법으로 갈 수 있을 것입니다.
다만 데스크탑 환경으로서는, Mint 쪽이 보다 안정되어 있다고 느꼈다
Mac에서 Ubuntu 16.04 부팅 가능한 USB 만들기
htp : ///bg-sk. 코 m/마 c/우분츠_보오츠 sb/
CUDA 관계
NVIDIA CUDA Installation Guide for Linux
htp // // cs. 응아아. 코 m / 쿠다 / 쿠다 - s s 치 치 온구이 드 - x x / 어서 x. HTML
설치하려면
두 가지 유형이 있지만 다양한 편의 deb 사용
준비
TensorFlow는 빌드된 것을 도입하므로, CUDA계의 버젼을 미리 확인해 두지 않으면 안 된다
문제의 대부분은 버전 관계의 문제이므로 여기가 수수께끼입니다.
htps //w w. 천식 rfぉw. 오 rg / an s ta l / an s ta l_ so r s s # d d s o r se _
tensorflow-1.6/1.5를 모두 지원하는 CUDA 9, cuDNN 7
CUDA Toolkit 페이지에서 Legacy Releases
htps : //에서 ゔぇぺぺr. 응아아. 코 m / 쿠다 - 토키 t - 아 r ゔ
다운로드하여 세 번째 줄까지 실행
$ sudo dpkg -i cuda-repo-ubuntu1604_9.0.176-1_amd64.deb
$ sudo apt-key adv --fetch-keys http://developer.download.nvidia.com/compute/cuda/repos/ubuntu1604/x86_64/7fa2af80.pub
$ sudo apt-get update
드라이버 (nvidia-390) 설치
이 시점에서 설치하지 않으면 종속성이 해결되지 않았습니다 (왜인지 잘 모르겠지만)
재부팅 필요
CUDA 9.0 설치
제대로 버전 지정
지정하지 않으면 최신 버전 9.1이 들어가서 다소 어려워진다 (라고는 해도 PATH의 지정으로 어떻게 되든)
$ sudo apt-get install cuda-9-0
CUDA 설치 후
PATH를 추가 할 때 파일을 직접 편집하지 않고 echo를 사용하면 $를 이스케이프해야합니다.
PATH 추가처는 .profile(내 경우)
$ echo "export PATH=/usr/local/cuda-9.0/bin\${PATH:+:\${PATH}}" >> ~/.profile
$ source ~/.profile
$ sudo /usr/bin/nvidia-persistenced --verbose
$ sudo apt-get install g++ freeglut3-dev build-essential libx11-dev libxmu-dev libxi-dev libglu1-mesa libglu1-mesa-dev
cuDNN 7.0 설치
계정 생성 및 로그인 필요
htps : //에서 ゔぇぺぺr. 응아아. 코 m / rdp / 쿠 드 - w w ぉ 아 d
$ sudo dpkg -i *.deb
Python 세트 (Anaconda) 설치
Anaconda3 다운로드
htps //w w. 아나 곤다. 코 m / 도 w 응 아 d / # ぃ ん x
최근에 PATH는 추가하지 않고
conda activate/deactivate
를 사용하는 것이 표준입니다.아래 설정으로 zsh를 시작하면 자동으로 기본 가상 환경 (base)으로 들어갑니다.
$ sh ./Anaconda3-5.1.0-Linux-x86_64.sh
$ echo ". /home/<username>/anaconda3/etc/profile.d/conda.sh" >> ~/.bashrc
$ echo ". /home/<username>/anaconda3/etc/profile.d/conda.sh" >> ~/.zshrc
$ echo "conda activate" >> ~/.zshrc
TensorFlow 1.6 설치
Installing Tensorflow on Ubuntu
htps //w w. 천식 rfぉw. 오 rg / in s ta l / in s ta l / ぃ
번거롭기 때문에 기본 가상 환경에 설치
$ sudo apt-get install cuda-command-line-tools
$ echo "export LD_LIBRARY_PATH=\${LD_LIBRARY_PATH}\${LD_LIBRARY_PATH:+:}/usr/local/cuda/extras/CUPTI/lib64" >> ~/.profile
$ conda activate
(base)$ pip install --ignore-installed --upgrade https://storage.googleapis.com/tensorflow/linux/gpu/tensorflow_gpu-1.6.0-cp36-cp36m-linux_x86_64.whl
동작 점검
Using GPUs | TensorFlow Programmer's Guide
htps //w w. 천식 rfぉw. 오 rg / p 로g 라메 rs_ 구이 데 / 우신 g_g 푸
$ conda activate
(base)$ jupyter notebook
$ sudo apt-get install cuda-command-line-tools
$ echo "export LD_LIBRARY_PATH=\${LD_LIBRARY_PATH}\${LD_LIBRARY_PATH:+:}/usr/local/cuda/extras/CUPTI/lib64" >> ~/.profile
$ conda activate
(base)$ pip install --ignore-installed --upgrade https://storage.googleapis.com/tensorflow/linux/gpu/tensorflow_gpu-1.6.0-cp36-cp36m-linux_x86_64.whl
Using GPUs | TensorFlow Programmer's Guide
htps //w w. 천식 rfぉw. 오 rg / p 로g 라메 rs_ 구이 데 / 우신 g_g 푸
$ conda activate
(base)$ jupyter notebook
Jupyter_notebook
import tensorflow as tf
hello = tf.constant('Hello, TensorFlow!')
with tf.Session(config=tf.ConfigProto(log_device_placement=True)) as sess:
print(sess.run(hello))
import 때의 Warning 은 신경쓰지 않아도 좋을 것 같다
Jupyter를 시작한 터미널을 확인하고 GPU가 인식되고 오류가 없으면 OK
로그
2018-03-04 11:16:58.334216: I tensorflow/stream_executor/cuda/cuda_gpu_executor.cc:898] successful NUMA node read from SysFS had negative value (-1), but there must be at least one NUMA node, so returning NUMA node zero
2018-03-04 11:16:58.334554: I tensorflow/core/common_runtime/gpu/gpu_device.cc:1212] Found device 0 with properties:
name: GeForce GTX 980 major: 5 minor: 2 memoryClockRate(GHz): 1.291
pciBusID: 0000:01:00.0
totalMemory: 3.95GiB freeMemory: 3.45GiB
2018-03-04 11:16:58.334583: I tensorflow/core/common_runtime/gpu/gpu_device.cc:1312] Adding visible gpu devices: 0
2018-03-04 11:16:58.557392: I tensorflow/core/common_runtime/gpu/gpu_device.cc:993] Creating TensorFlow device (/job:localhost/replica:0/task:0/device:GPU:0 with 3178 MB memory) -> physical GPU (device: 0, name: GeForce GTX 980, pci bus id: 0000:01:00.0, compute capability: 5.2)
Device mapping:
/job:localhost/replica:0/task:0/device:GPU:0 -> device: 0, name: GeForce GTX 980, pci bus id: 0000:01:00.0, compute capability: 5.2
2018-03-04 11:16:58.585013: I tensorflow/core/common_runtime/direct_session.cc:297] Device mapping:
/job:localhost/replica:0/task:0/device:GPU:0 -> device: 0, name: GeForce GTX 980, pci bus id: 0000:01:00.0, compute capability: 5.2
Const: (Const): /job:localhost/replica:0/task:0/device:CPU:0
2018-03-04 11:16:58.595781: I tensorflow/core/common_runtime/placer.cc:875] Const: (Const)/job:localhost/replica:0/task:0/device:CPU:0
Reference
이 문제에 관하여(TensorFlow-GPU 환경 구축 2018년 3월), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/Lirimy/items/a6f051fbfdac333828ed텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)