4
7

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

Ubuntu16.04 + GPU(GTX1080)にAnacondaを使ってTensorFlow1.4をいれるも、NVIDIA周りとPythonのバージョンでつまづいたのでメモ

Last updated at Posted at 2017-11-10

状況

タイトル通り、Ubuntu+GPUにバージョンアップしたTensorFlow1.4を入れるとNVIDIAドライバとPyhtonバージョンの間でトラブルがあったので、一通りメモ。結果的に、うまくGPUが動いてMLできているのでとりあえず成功。

Anacondaインストール

まずはapt-get更新。

$ sudo apt-get update

更新できたら、Anacondaの公式サイトにいってインストーラーダウンロード。

$ bash ~/Downloads/Anaconda3-5.0.1-Linux-x86_64.sh

シェルを使ってインストール。※リモート操作などの場合は、pyenvを使うのがスマートっぽい。
Anacondaが入ったらPythonの主要なライブラリはデフォルトでインストールされているのでとりあえず

$ pip install conda

でcondaをインストール。エラーが出た場合は、

$ pip install --upgrade pip

でpipを更新するとできる(かも)
condaがインストールできたら、TensorFlow用の仮想環境を構築する。

condaコマンドで仮想環境を作る

下記のように。

$ conda create -n [env name] python=[Python version] anaconda

たとえば

$ conda create -n tensorflow13 python=3.6 anaconda

みたいな。

※タイトルにもあるようにTensorFlowが1.3のときは3.6に対応してたが…1.4から3.6だとエラーが出るようになった?結果的に3.5にするとうまくいったという記事ですが、TensorFlow側でいつの間にか対応しているということはありそう。

【以下、NVIDIAのTensorFlow用のチュートリアル】
https://www.nvidia.com/en-us/data-center/gpu-accelerated-applications/tensorflow/

NVIDIAドライバの最新版をインストール

$ sudo add-apt-repository ppa:graphics-drivers / ppa
$ sudo apt-get install nvidia-375

このあとグラフィックドライバを有効にするために再起動したほうが良いみたい。

CUDA ToolKitインストール(ver8.0)Linux用をダウンロード

重要 ver.9.0が最新ですが、TensorFlow1.4に対応したCuDNNのバージョン6.0に対応してないので8.0をインストールする。
https://developer.nvidia.com/cuda-toolkit
公式サイトでdebファイルをダウンロードしようとすると、9.0しかダウンロードできないので、Additional ResourcesのLegacy Releasesから8.0 GA2をダウンロードする。
とにかく最初に8.0をダウンロードするのが重要で、もし最新版をインストールしてる場合はアンインストールしたほうがよさそうです。(ディレクトリ構造が違うらしくCuDNNがスマートにインストールできない)

$ sudo dpkg -i cuda-repo-ubuntu1604_8.0.61-1_amd64.deb```
$ sudo apt-get update
$ sudo apt-get install cuda

を手順通り行う。CUDA ToolKitがインストールされた。

CuDNN for Linuxをインストール

NVIDIAにログインして素直にcuDNN v6.0 Library for Linuxをダウンロード。

$ tar -xzvf cudnn-8.0-linux-x64-v5.1.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*

と、順番に実行。最新版をインストールしていると、そもそもusr/local配下にcudaなんてディレクトリが生成されなかったんですが自分だけでしょうか。
TensorFlowとの依存関係に必要なパッケージをインストール。

$ sudo apt-get install libcupti-dev

これでNVIDIAのドライバ周りが整った。

TensorFlowをインストールする。

さきほど作ったAnacondaの仮想環境を有効にする。

$ source activate [env name]

で、

pip install tensorflow-gpu

してTensorFlowのGPU版をインストール。

で、ここからが問題。TensorFlow1.4だと、ここでなぜかPython3.5じゃないと動きませんよといわれる。
エラーメッセージで検索すると、GitHubのTensorFlowのフォーラムでもガヤついていたので、自分だけじゃないという安心感。

だったらばということでAnacondaで再度Python3.5の実行環境作って走らせたら動いたよかったね!

4
7
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
4
7

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?