CodeLab技術ブログ

プログラミング技術まとめ

CentOS7+anaconda+python3.6でtensorflow(1.3)


TensorflowのCentOS7へのインストールを試みてみました。
バージョンは現在最新の1.3を入れてみます。

Linux系はUbuntuだけ特別に書いてあるので、ネットにはUbuntuでのインストール例ばかり。

pythonについては3.6をanacondaで導入済みの状態からスタートです。
またNVIDA製GPUを使いドライバやcudaも導入済みの状態です。

tensorflow用の環境を作成してactivateします。


#conda create -n tensorflow
#source activate tensorflow

次にTensorFlow本体をpipで下記のようにURLを指定してインストールしますが、インストール先のURLは状態によって変わります。

#pip install –ignore-installed –upgrade [tfBinaryURL]

tfBinaryURLはURLが入り、ここリストがあります。
https://www.tensorflow.org/install/install_linux#the_url_of_the_tensorflow_python_package

今回はPython3.6のGPUサポート版を使いました
https://storage.googleapis.com/tensorflow/linux/gpu/tensorflow_gpu-1.3.0-cp36-cp36m-linux_x86_64.whl

とうことで
pip install –ignore-installed –upgrade https://storage.googleapis.com/tensorflow/linux/gpu/tensorflow_gpu-1.3.0-cp36-cp36m-linux_x86_64.whl

こんな感じでインストールしました。
参考ページ
https://www.tensorflow.org/install/install_linux#InstallingAnaconda

さて、これでOKかなと思ってjupter notebookを立ち上げて
#jupyter notebook

import tensorflow as tf

とやって実行してみたんだけど

ImportError: libcudnn.so.6: cannot open shared object file: No such file or directory
というエラー。うーん。探してみたけどそんなライブラリ入ってない!
というわけで調べてみたらどうも、cuDNNというライブラリをcudaとは別に入れないとダメみたいです。
cuDNNは
https://developer.nvidia.com/cudnn
ここからダウンロードできるっポイ(要NVIDIA ログインアカウント)

CUDA 8.0を入れているので
Download cuDNN v7.0 (August 3, 2017), for CUDA 8.0 の
cuDNN v7.0 Library for Linux をダウンロードしました。
ついでにインストールガイドもダウンロード。

ようは、解凍したライブラリとヘッダファイルをパスの通ったところにおけばいいみたい。

cudaのライブラリへのパスは既に通してあるので、一緒に置くことにしました。
#cd cuda
#sudo cp lib64/libcudnn* /usr/local/cuda/lib64/
#sudo cp include/cudnn.h /usr/local/cuda/include

これでOK。
jupiterに戻って再実行してみたらエラーは消えました。

そこで、適当に計算させてみたところ

import tensorflow as tf
a = tf.constant(1)
b = tf.constant(1)
session = tf.Session()
print(session.run(a+b))

ちゃんと”2”と表示されたので、とりあえず動いてはいるようです。

コメントは受け付けていません。