Setup for deep learning workstation

This page covers the steps for setting up a machine primarily intended for deep learning analyses. This is assuming Ubuntu has already been installed.

Initial setup

Package installation

openssh-server
sudo apt-get install tightvncserver
sudo apt-get install ubuntu-desktop gnome-panel gnome-settings-daemon metacity nautilus gnome-terminal

VNC server configuration

{{{# !/bin/sh [no spaces] [-x /etc/vnc/startup] && exec /etc/vnc/startup [ -r $HOME/.Xresources ] && xrdb $HOME/.Xresources xsetroot -solid grey vncconfig -iconic & x-terminal-emulator -geometry 80x24+10+10 -ls -title "$VNCDESKTOP Desktop" & x-window-manager & gnome-panel & gnome-settings-daemon & metacity & nautilus }}} Adding users

sudo adduser newusername
sudo usermod -aG sudo newusername

Keras setup

Install and run Anaconda:

ls /opt/anaconda3
sudo bash [name of anaconda .sh file]

pip install theano
pip install keras
apt-get install git

Home folder: Edit keras.json and change tensorflow to theano

Install CUDA 8 and CUDNN: http://askubuntu.com/questions/788323/change-runlevel-on-16-04 http://askubuntu.com/questions/481414/install-nvidia-driver-instead-nouveau (top solution)

Add CUDA directory cuda/bin to path

Copy cudnn.h to cuda include directory

Copy shared libraries to cuda library

Make .theanorc in home directory

Set CUDA/root environment variable

Change ldconfig in cuda lib directory:

sudo ldconfig /usr/local/cuda/lib64 (unclear how often we have to do this -- each restart? Per user?)