Skip to content

Instantly share code, notes, and snippets.

@yumatsuoka
Last active March 28, 2017 11:21
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 yumatsuoka/a87eed00c1955961f7248ff5f590248a to your computer and use it in GitHub Desktop.
Save yumatsuoka/a87eed00c1955961f7248ff5f590248a to your computer and use it in GitHub Desktop.

log which is making cuda env with tensorflow by yumatsuoka

environments

local machine

Ubuntu: 14.04

AWS machine

Ubuntu: 16.04
Model: g2.2xlarge
GPU: GRID K520 * 1
CPU: 8
Mem:15GB

setup local new machine

LANG=C xdg-user-dirs-gtk-update
sudo apt-get update  
sudo apt-get upgrade  
sudo apt-get install vim-gnome ssh git aptitude  

setup vim with dein.vim

## neobundleを使う場合
curl https://raw.githubusercontent.com/Shougo/neobundle.vim/master/bin/install.sh > install.sh
sh ./install.sh
rm -rf install.sh
vim
(select y on the vim)

## dein.vimを使う場合
mkdir -p ~/.vim/dein/repos/github.com/Shougo/dein.vim
git clone https://github.com/Shougo/dein.vim.git ~/.vim/dein/repos/github.com/Shougo/dein.vim

http://qiita.com/yoza/items/2f8bd33a18225754f346

install tmux

手法1
cd /usr/local/src
apt-get build-dep tmux
apt-get install autoconf libtool pkg-config
sudo apt-get install libevent-dev automake libncurses5-dev
cd /usr/local/src
git clone https://github.com/tmux/tmux.git
cd /usr/local/src/tmux
./autogen.sh
./configure --prefix=/usr/local 
make
make install
手法2(手法1で成功しなかった人へ)
事前準備
sudo apt-get update
sudo apt-get install -y python-software-properties software-properties-common

リポジトリ追加
sudo add-apt-repository -y ppa:pi-rho/dev
リポジトリ最新化
sudo apt-get update
最新版のインストール ※
sudo apt-get install -y tmux=2.0-1~ppa1~t
バージョン確認
tmux -V

http://tesiri.hateblo.jp/entry/2016/05/10/112301

connect AWS servers

mkdir .ssh  
cp ~/hogege.pem .ssh/  
vim .ssh/config  
- Host annie  
- HostName (hoge.hoge.hoge.hoge):ip_address  
- User hogehoge  
- Port 22  
- IdentityFile ~/.ssh/hogege.pem  
- ServerAliveinterval 60  

check whether can login with ssh

ssh annie  
Ctrl+d  

localのマシンで作業

scp -r ~/Downloads/ annie:~/  

make cuda environment on GPU server

ssh annie  
sudo apt-get update  
sudo apt-get upgrade -y  
sudo apt-get install aptitude git vim-gnome python3-dev python3-pip -y  
sudo apt-get install -y build-essential python-pip python-dev python-numpy swig default-jdk zip zlib1g-dev ipython  

stop nouveau not to disurb installing cuda

echo -e "blacklist nouveau\nblacklist lbm-nouveau\noptions nouveau modeset=0\nalias nouveau off\nalias lbm-nouveau off\n" | sudo tee   /etc/modprobe.d/blacklist-nouveau.conf  
echo options nouveau modeset=0 | sudo tee -a /etc/modprobe.d/nouveau-kms.conf  
sudo update-initramfs -u  
sudo reboot  

install some libs related to cuda install

sudo apt-get install -y linux-image-extra-virtual  
sudo reboot  
sudo apt-get install -y linux-source linux-headers-`uname -r`  
ctrl+d  

install CUDA requires with scped files

chmod +x /Downloads/*  

stop x server

sudo systemctl stop lightdm  

install GPU driver and cuda toolkit

cd /Downloads  
sudo ./NVIDIA*.run  
sudo ./cuda-*.run  

install cuDNN

tar xvf cudnn-8.0-linux-x64-v5.1.tgz   
sudo cp cuda/include/cudnn.h /usr/local/include  
sudo cp cuda/lib64/libcudnn* /usr/local/cuda/lib64/  

add PATH related with CUDA to .bashrc

echo 'export CUDA_HOME=/usr/local/cuda' >> ~/.bashrc  
echo 'export LD_LIBRARY_PATH="$LD_LIBRARY_PATH:/usr/local/cuda/lib64"' >> ~/.bashrc    
echo 'export PATH=/usr/local/cuda/bin:$PATH' >> ~/.bashrc

pyenvの設定(python環境の設定)

git clone https://github.com/yyuu/pyenv.git ~/.pyenv  
echo 'export PYENV_ROOT="$home/.pyenv"' >> ~/.bashrc   
# if have PATH error, above PATH
# echo 'export PYENV_ROOT="${HOME}/.pyenv"' >> ~/.bashrc   
echo 'export PATH="$PYENV_ROOT/bin:$PATH"' >> ~/.bashrc   
echo 'eval "$(pyenv init -)"' >> ~/.bashrc  
source .bashrc   
exec $SHELL  
sudo apt-get install -y make build-essential libssl-dev zlib1g-dev libbz2-dev  
sudo apt-get install -y libreadline-dev libsqlite3-dev wget curl llvm  
sudo apt-get install -y libfreetype6-dev libblas-dev liblapack-dev gfortran tk-dev  
pyenv  
pyenv  install --list  
pyenv install anaconda2-4.3.0  
pyenv install anaconda3-4.3.0  
pyenv rehash  
pyenv global anaconda3-4.3.0   
python --version  

tensorflow&chainerのインストール(deep learning frameworksのインストール)

tensorflowの依存ライブラリ

sudo apt-get install libcupti-dev zlib1g-dev  

pip install tensorflow-gpu  
pip install chainer  

gpuを使ったdeep learningのコードを実行して環境確認

run and check tensorflow

mkdir ~/src   
cd ~/src  
git clone https://github.com/tensorflow/tensorflow  
cd ~/src/src/tensorflow/tensorflow/examples/learn/  
python mnist.py  

do chainer

cd ~/src  
git clone https://github.com/pfnet/chainer.git  
cd ~/src/chainer/examples/mnist/  
python train_mnist.py -g 0  

visualize training model

sudo apt-get install graphviz
dot -Tpng cg.dot -o hogehoge.png

do keras

cd ~/src
git clone https://github.com/fchollet/keras.git
cd ~/src/keras/examples/
python cifar10_cnn.py

reference

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment