CUDAとCaffeのインストール (Ubuntu 14.04 LTS)
CUDAとCaffeをインストールしたときの手順。
CUDA
※CUDAは、apt-getでなく、本家サイトからdebファイルを取得してやったほうがいいらしい。
ここ(CUDA 7.5 Downloads | NVIDIA Developer)から、debファイルをダウンロードする。
cuDNNについては、インストールするのをやめた。 ダウンロードサイトに、Organizationを入力する箇所があったので。。。 個人で使用する場合は、individualとか入れればいいのかな。
インストール
sudo dpkg -i cuda-repo-ubuntu1404-7-5-local_7.5-18_amd64.deb sudo apt-get update sudo apt-get install cuda
再起動
lsmod | grep nvidia
動作確認
cp -r /usr/local/cuda/samples ~ cd ~/samples make bin/x86_64/linux/release/deviceQuery
参考サイト
Ubuntu 14.04.3 LTS に Chainer をインストールする - 不確定特異点
Caffe
本家サイトのInstallation(Caffe | Installation)を参考にインストール。
Caffeにインストールが必要なものをapt-getでインストール
General dependencies
sudo apt-get install libprotobuf-dev libleveldb-dev libsnappy-dev libopencv-dev libhdf5-serial-dev protobuf-compiler sudo apt-get install --no-install-recommends libboost-all-dev
BLAS (Install ATLAS)
sudo apt-get install libatlas-base-dev
Remaining dependencies, 14.04
sudo apt-get install libgflags-dev libgoogle-glog-dev liblmdb-dev
Caffe用のフォルダを作成とCaffeのダウンロード
「~/caffe_ws」に作成することにした。
mkdir caffe_ws cd caffe_ws git clone https://github.com/BVLC/caffe.git
PyCaffeに必要なもののインストール
Fortranが必要らしいので。gfortranを入れる。
sudo apt-get install gfortran
VirtualEnvでcaffe用のpython環境を作成
「~/caffe_ws/python」で作成することにした。
mkdir ~/caffe_ws/python virtualenv --system-site-packages ~/caffe_ws/python source ~/caffe_ws/python/bin/activate # If using bash
簡単に使えるように、.bash_aliases に 「source .../activate」を登録しておく。
alias s_caffe="source ~/caffe_ws/python/bin/activate"
pipでpycaffeで必要なものをインストール
cd ~/caffe_ws/caffe/python for req in $(cat requirements.txt); do pip install $req; done deactivate
Caffeのコンパイル
cd ~/caffe_ws/caffe cp Makefile.config.example Makefile.config
Makefile.configの編集
環境に合わせて修正する。 CUDAあり、CUDNNなしだと、ほぼ変更不要のようだ。
numpyが~/caffe_ws/caffe配下にあるので、64行目あたりを変更。
#PYTHON_INCLUDE := /usr/include/python2.7 \ # /usr/lib/python2.7/dist-packages/numpy/core/include # この部分を環境にあわせて変更 PYTHON_INCLUDE := /usr/include/python2.7 \ /home/自分のアカウント/caffe_ws/python/lib/python2.7/site-packages/numpy/core/include
OpenCV3.1を入れてたので、「OPENCV_VERSION := 3」を有効にした。
make
make all -j4 #CPUのコア数で調整 make test make runtest
pycaffeのインストール
s_caffe cd ~/caffe_ws/caffe make pycaffe make distribute export PYTHONPATH=~/caffe_ws/caffe/python:$PYTHONPATH
pycaffeのテスト
$> python import caffe
pycaffe.cy でワーニングが出てるけど、そのうち対応するらしい。
caffeでMNIST
export CAFFE_ROOT=~/caffe_ws/caffe cd $CAFFE_ROOT ./data/mnist/get_mnist.sh ./examples/mnist/create_mnist.sh ./examples/mnist/train_lenet.sh
train_lenet.shの実行時間は、だいたい3分20秒くらい。
参考サイト
素人がCaffeを使ってDeepLearningしてみた(導入編) - Qiita
コメント
chainerでCUDAを利用する場合、chainerインストール前にCUDAをインストールする必要があるとのこと。
インストールは先日のブログどおり。
chainerのMNIST exampleをgpuありで実行したところ、1分50秒くらい!(CPU Core i5, GPU:GPX750Ti)
gpuなしだと、2時間半くらいで、前回のノートPCのVirtualBox上では、1日ちょっとだったのでgpu必須でしょう。
gpuなしに比べて80倍くらい速いけど、なにか間違ってないか不安。
それと、AWSのgpuインスタンスだと5倍くらいとどこかで書いてあった気がするけど、結構パフォーマンスが違うみたい。
それから、tensorflowについては、GPU利用する場合にCUDAとcuDNNのどちらも必要とのことでインストールしなかった。