Ubuntu16.04上でtensorflowをGTX 1070で動かす
Overview
Ubuntu16.04上でGTX1070/1080を用いてtensorflowで機械学習したい人のためのinstall手順
PCスペック
今回installに使ったPCのスペックは
・CPU: i7-6700
・Memory: DDR4 16GB
・Motherboard: ASUS Z170
・GPU: GeForce GTX1070
PCのスペックや世代が低いとGPU DriverとCUDAがinstallできたとしても、tensorflowが動かない可能性がある。
ちなみに、i5-4440とDDR3 16GBとGTX1070の組み合わせでは一部のプログラムではエラーが出て強制終了した。
Install Nvidia Driver
$ sudo add-apt-repository ppa:graphics-drivers/ppa
$ sudo apt-get update
$ sudo apt-get install nvidia-367
$ sudo apt-get install mesa-common-dev
$ sudo apt-get install freeglut3-dev
Install CUDA8.0
- GTX1070/1080はCUDA8.0しか対応していない
NvidiaのサイトからCUDA8.0をダウンロード
https://developer.nvidia.com/cuda-downloads
Installer Typeはrunfile[local]とする。terminalで.bashrcを開く
$ gedit ~/.bashrc
~/.bashrcに以下を書き加わる
export PATH=/usr/local/cuda-8.0/bin${PATH:+:${PATH}}
export LD_LIBRARY_PATH=/usr/local/cuda-8.0/lib64${LD_LIBRARY_PATH:+:${LD_LIBRARY_PATH}}
export CUDA_HOME=/usr/local/cuda
- CUIインターフェースに入る
- Ctrl+Alt+F1を押し
- login
- sudo init 3
- ダウンロードしたcudaパッケージをinstall
$ chmod +x cuda_8.0.44_linux.run
$ sudo sh ./cuda_8.0.44_linux.run
$ sudo reboot
sudo sh ./cuda_8.0.27_linux-run
はTabで補完してくれないため手で入力
- 再起動したら再びCUIインターフェースへ
1. CTRL+ALT+F1
2. Login
$ sudo apt-get install nvidia-367 --reinstall
$ sudo reboot
Nvidia Driverの確認
$ nvidia-smi
GPUの認識に成功した場合はGPUの型番やGPU使用率などが表示される
以上は記事
GTX-1080 など GeForce を Ubuntu 16.04 LTS で CUDA-8.0RC と共に使う
を参考にした
Install Cudnn v5
- Nvidiaのサイトからcudnn v5をダウンロード https://developer.nvidia.com/cudnn
- terminalで以下のコマンドを実行
$ sudo tar -xzvf cudnn-8.0-linux-x64-v5.0-ga.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*
必要なパッケージをInstall
$ sudo apt-get install openjdk-8-jdk git python-dev python-numpy build-essential python-pip python-virtualenv swig python-wheel libcurl3-dev
BazelをInstall
$ echo "deb [arch=amd64] http://storage.googleapis.com/bazel-apt stable jdk1.8" | sudo tee /etc/apt/sources.list.d/bazel.list
$ curl https://bazel.io/bazel-release.pub.gpg | sudo apt-key add -
$ sudo apt-get update && sudo apt-get install bazel
$ sudo apt-get upgrade bazel
更新もあるかもしれないので、以下の公式サイト要参照
https://www.bazel.io/versions/master/docs/install.html
Install Tensorflow
- githubからTensorflowをclone
$ git clone https://github.com/tensorflow/tensorflow
- Tensorflow Installationの設定
$ cd ~/tensorflow
$ ./configure
注意:GTX1070の場合
Cuda SDKを 8.0
Cudnn versionを 5
GPU Computing capability 6.1 (https://developer.nvidia.com/cuda-gpus)
とする
- Tensorflowを構築
$ bazel build -c opt --config=cuda //tensorflow/tools/pip_package:build_pip_package
$ bazel-bin/tensorflow/tools/pip_package/build_pip_package /tmp/tensorflow_pkg
$ sudo pip install /tmp/tensorflow_pkg/tensorflow-0.11.0rc1-py2-none-any.whl
念のためTensorflowは以下のURLより最新版のinstalling from sourcesをチェックするとよい
https://www.tensorflow.org/versions/r0.11/get_started/os_setup.html#installing-from-sources
以上は記事
Install GPU TensorFlow From Sources w/ Ubuntu 16.04 and Cuda 8.0
を参考した