Skip to content

Instantly share code, notes, and snippets.

@hidenorly
Last active July 7, 2016 17:25
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save hidenorly/dcb003e50ff932d873cc43bcdc10ffae to your computer and use it in GitHub Desktop.
Save hidenorly/dcb003e50ff932d873cc43bcdc10ffae to your computer and use it in GitHub Desktop.
TensorFlow, Caffe, Chainer と Deep Learning大御所を一気に source code build で GPU向けに setupしてみた ref: http://qiita.com/hidenorly/items/9f614534db1b151b3b93
export CUDA_PATH=$CUDA_HOME
$ sudo apt-get install python-pip python-dev -y
$ sudo pip install --upgrade pip
$ wget https://github.com/bazelbuild/bazel/releases/download/0.3.0/bazel-0.3.0-installer-linux-x86_64.sh
$ chmod +x bazel-0.3.0-installer-linux-x86_64.sh
$ ./bazel-0.3.0-installer-linux-x86_64.sh --user
$ nvidia-smi
$ sudo apt-get install -y build-essential cmake git pkg-config
$ sudo apt-get install -y libprotobuf-dev libleveldb-dev libsnappy-dev libhdf5-serial-dev protobuf-compiler
$ sudo apt-get install -y libatlas-base-dev
$ sudo apt-get install -y --no-install-recommends libboost-all-dev
$ sudo apt-get install -y libgflags-dev libgoogle-glog-dev liblmdb-dev
$ sudo apt-get install -y python-pip python-dev python-numpy python-scipy
$ sudo apt-get install -y libopencv-dev
$ sudo apt-get install --assume-yes libopencv-dev build-essential cmake git libgtk2.0-dev pkg-config python-dev python-numpy libdc1394-22 libdc1394-22-dev libjpeg-dev libpng12-dev libtiff5-dev libjasper-dev libavcodec-dev libavformat-dev libswscale-dev libxine2-dev libgstreamer0.10-dev libgstreamer-plugins-base0.10-dev libv4l-dev libtbb-dev libqt4-dev libfaac-dev libmp3lame-dev libopencore-amrnb-dev libopencore-amrwb-dev libtheora-dev libvorbis-dev libxvidcore-dev x264 v4l-utils unzip
$ sudo apt-get install ffmpeg libopencv-dev libgtk-3-dev python-numpy python3-numpy libdc1394-22 libdc1394-22-dev libjpeg-dev libpng12-dev libtiff5-dev libjasper-dev libavcodec-dev libavformat-dev libswscale-dev libxine2-dev libgstreamer1.0-dev libgstreamer-plugins-base1.0-dev libv4l-dev libtbb-dev qtbase5-dev libfaac-dev libmp3lame-dev libopencore-amrnb-dev libopencore-amrwb-dev libtheora-dev libvorbis-dev libxvidcore-dev x264 v4l-utils unzip
$ git clone https://github.com/BVLC/caffe.git
$ cd caffe
$ cp Makefile.config.example Makefile.config
$ find . -type f -exec sed -i -e 's^"hdf5.h"^"hdf5/serial/hdf5.h"^g' -e 's^"hdf5_hl.h"^"hdf5/serial/hdf5_hl.h"^g' '{}' \;
$ cd /usr/lib/x86_64-linux-gnu
$ sudo ln -s libhdf5_serial.so libhdf5.so
$ sudo ln -s libhdf5_serial_hl.so libhdf5_hl.so
$ cd ~/work/caffe/python
$ sudo su
# for req in $(cat requirements.txt); do pip install $req; done
$ cd ~/work/caffe
$ make all
$ make test
$ make runtest
$ make distribute
source /home/hidenorly/.bazel/bin/bazel-complete.bash
export PATH=$PATH:/home/hidenorly/.bazel/bin
$ source ~/.bashrc
$ sudo apt-get install libhdf5-dev
$ pip intall h5py
$ git clone https://github.com/pfnet/chainer.git
$ cd chainer
$ sudo CUDA_PATH=/usr/local/cuda python setup.py develop
~/work/chainer/examples/word2vec$ python ../ptb/download.py
~/work/chainer/examples/word2vec$ python train_word2vec.py --gpu 0
$ nvidia-smi
$ source ~/.bashrc
$ sudo apt-get install python-numpy swig python-dev python-wheel
$ cd ~/work/cuda
$ tar zxvf 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*
$ git clone https://github.com/tensorflow/tensorflow
~/work/tensorflow$ ./configure
diff --git a/third_party/gpus/crosstool/CROSSTOOL b/third_party/gpus/crosstool/CROSSTOOL
index 8db81a9..61250bc 100644
--- a/third_party/gpus/crosstool/CROSSTOOL
+++ b/third_party/gpus/crosstool/CROSSTOOL
@@ -52,6 +52,8 @@ toolchain {
cxx_flag: "-std=c++11"
linker_flag: "-lstdc++"
linker_flag: "-B/usr/bin/"
+ linker_flag: "-lrt"
+ linker_flag: "-lm"
~/work/tensorflow$ bazel build -c opt --config=cuda //tensorflow/cc:tutorials_example_trainer
$ 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-X.X.X-py2-none-any.whl
# cuDNN acceleration switch (uncomment to build with cuDNN).
-# USE_CUDNN := 1
+USE_CUDNN := 1
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment