973
Comment:
|
7717
|
Deletions are marked like this. | Additions are marked like this. |
Line 8: | Line 8: |
Ubuntu installation notes: * Should probably tweak the BIOS to match that of Agnew/Calculon/Lrrr/Ndnd if we set up any more of these. Just see one of those guys for the good options. * Can/should tick on the options for auto-installing updates and installing third-party software while installing Ubuntu * For some reason, on the rack-mount machines, when it tells you to hit enter to restart after installing, hitting enter doesn't do anything. You just have to power off the machine. * Another weird thing: On the rack-mount machines with two graphics cards, you have to switch back and forth between the two graphics cards during Ubuntu installation vs running vs using the BIOS or whatnot. It's weird. Just keep going back and forth... one or the other will work for any given scenario. Other tips/notes on running analyses: KerasTips |
|
Line 9: | Line 18: |
Early on, presumably right after installation of OS, remember to update all packages: {{{ sudo apt-get update sudo apt-get upgrade }}} |
|
Line 11: | Line 28: |
{{{ openssh-server |
These two are definite necessities. In particular, need to install openssh-server before basically anything else because otherwise we can't get SSH access. {{{ sudo apt-get openssh-server |
Line 14: | Line 32: |
}}} The following may not be necessary anymore -- it was for our old VNC setup. But it shouldn't hurt to install these packages anyway, just in case we want to use something like the old setup again. {{{ |
|
Line 16: | Line 38: |
'''VNC server configuration''' {{{ |
'''OLD VNC server configuration''' {{{ #!/bin/sh |
Line 23: | Line 45: |
vncconfig -iconic & x-terminal-emulator -geometry 80x24+10+10 -ls -title "$VNCDESKTOP Desktop" & x-window-manager & gnome-panel & gnome-settings-daemon & metacity & nautilus }}} |
vncconfig -iconic & x-terminal-emulator -geometry 80x24+10+10 -ls -title "$VNCDESKTOP Desktop" & x-window-manager & gnome-panel & gnome-settings-daemon & metacity & nautilus }}} '''NEW VNC server configuration''' Steps roughly follow [[https://www.digitalocean.com/community/tutorials/how-to-install-and-configure-vnc-on-ubuntu-16-04]]. Exact instructions below: Install the following packages: {{{ sudo apt-get install xfce4 xfce4-goodies sudo apt-get install autocutsel }}} Next, start up VNC: {{{ vncserver:yourvncnumber }}} It will prompt you to set and confirm a password; do so. Then end the session: {{{ vncserver -kill :yourvncnumber }}} This creates `~/.vnc/xstartup`. Either edit `~/.vnc/xstartup` , or delete it and make a new file. IF MAKING A NEW FILE, enter this command as well: {{{ chmod 755 ~/.vnc/xstartup }}} The new contents of `~/.vnc/xstartup` should be: {{{ #!/bin/bash xrdb $HOME/.Xresources startxfce4 & }}} After you've edited (or deleted/recreated) `xstartup`, start a new VNC desktop: {{{ vncserver :yourvncnumber -geometry 1280x800 }}} When you open the VNC viewer, you might get a "Welcome to first start" message; select "Use default config". (You may also get an error message saying Ubuntu had a problem but it doesn't appear to cause issues.) That should be the basic VNC setup. Other convenience functions/packages/etc below: |
Line 29: | Line 96: |
sudo adduser [username] sudo usermod -aG sudo [username] }}} |
sudo adduser newusername sudo usermod -aG sudo newusername }}} '''Install additional packages''' * Sublime Text * FileZilla '''Enable copy/paste on VNC''' Allows copy/paste between VNC windows and your computer. This has to be done at the beginning of every VNC session (so you should only need to do it once, unless you kill your VNC session, Agnew/Calculon/etc restart, etc). {{{ run autocutsel -fork }}} '''Enable the Tab key''' [[https://www.starnet.com/xwin32kb/tab-key-not-working-when-using-xfce-desktop/]] * Open the Xfce Application Menu > Settings > Window Manager * Click on the Keyboard Tab * Clear the "Switch window for same application" setting |
Line 33: | Line 121: |
{{{#!wiki xxx }}} |
Install and run Anaconda: {{{ sudo bash [name of anaconda .sh installer file] when prompted, install into: /opt/anaconda3 }}} Next, do the CUDA setup: Download CUDA installer from NVidia (or actually, just get from Agnew/Calculon/etc.) Need to follow these pages' instructions for shutting down display manager and blacklisting Nouveau: http://askubuntu.com/questions/788323/change-runlevel-on-16-04 http://askubuntu.com/questions/481414/install-nvidia-driver-instead-nouveau (top solution) {{{ sudo systemctl isolate multi-user.target sudo systemctl enable multi-user.target sudo systemctl set-default multi-user.target }}} Those steps above should disable starting up in graphical mode; now run: {{{ sudo nano /etc/modprobe.d/blacklist.conf }}} Add the following lines to that blacklist file (see Agnew/Calculon's blacklist files if you want to confirm you got it right) {{{ blacklist amd76x_edac #this might not be required for x86 32 bit users. blacklist vga16fb blacklist nouveau blacklist rivafb blacklist nvidiafb blacklist rivatv }}} Now the following is probably not necessary but not a bad idea to run anyway {{{ sudo apt-get remove --purge nvidia* }}} Now restart again. When restarted, you should be able to run the CUDA installer. Accepted most of the defaults; put samples in /opt/cuda_samples. CUDA should now be installed. Next up is CUDNN -- need to download that from Nvidia developer program or just get from Agnew/Calculon/etc. Unzip/untar/whatever the CUDNN files e.g. `cudnn-8.0-linux-x64-v5.1.tar`. Should yield a `cuda` directory with `lib64` and `include` subdirectories. Copy the files in each of those to the corresponding `/usr/local/cuda` subdirectories (will require `sudo`), e.g. `sudo cp lib64/* /usr/local/cuda/lib64/` (assuming you are in the `cuda` directory already). Now we need to put CUDA in the path and set up its environment variable(s) -- should just need to add the following to each user's `.bashrc` file (and exit shell / re-enter shell to take effect): {{{ export PATH="/usr/local/cuda/bin:$PATH" export set CUDA_ROOT=/usr/local/cuda }}} Also, it seems you need to enter `sudo ldconfig /usr/local/cuda/lib64` at some point after installing all this stuff -- we think this has to do with making the system aware of the shared libraries? Seems like we need to enter it periodically but it's not clear when -- maybe after each restart??? == below still needs revising == {{{ pip install theano pip install keras apt-get install git }}} Edit `keras.json` (in home folder) Change `backend:` from `tensorflow` -> `theano` Change `image_dim_ordering:` from `tf` -> `th` Make `.theanorc` in home directory == Mount Farnsworth == Only needs to be done once. Will only unmount if we do so explicitly or if Agnew/Calculon/Lrrr/Ndnd gets rebooted (or if their network connection dies) Install cifs-utils package: `sudo apt-get install cifs-utils` `sudo mkdir /mnt/eeg_data_analysis` (or whatever the share is named) `sudo mount -t cifs -o username=matt //farnsworth/eeg_data/analysis /mnt/eeg_data_analysis/` (replace username with your Farnsworth username) == Start VNC session == Enter in Terminal: {{{ ssh yourusername@agnew/calculon.local vncserver :yourvncnumber -geometry (whatever, e.g.) 1280x800 }}} Enter in VNC: {{{ agnew/calculon.local :yourvncnumber }}} == End VNC session == {{{ vncserver -kill :yourvncnumber }}} |
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.
Ubuntu installation notes:
- Should probably tweak the BIOS to match that of Agnew/Calculon/Lrrr/Ndnd if we set up any more of these. Just see one of those guys for the good options.
- Can/should tick on the options for auto-installing updates and installing third-party software while installing Ubuntu
- For some reason, on the rack-mount machines, when it tells you to hit enter to restart after installing, hitting enter doesn't do anything. You just have to power off the machine.
- Another weird thing: On the rack-mount machines with two graphics cards, you have to switch back and forth between the two graphics cards during Ubuntu installation vs running vs using the BIOS or whatnot. It's weird. Just keep going back and forth... one or the other will work for any given scenario.
Other tips/notes on running analyses: KerasTips
Initial setup
Early on, presumably right after installation of OS, remember to update all packages:
sudo apt-get update sudo apt-get upgrade
Package installation
These two are definite necessities. In particular, need to install openssh-server before basically anything else because otherwise we can't get SSH access.
sudo apt-get openssh-server sudo apt-get install tightvncserver
The following may not be necessary anymore -- it was for our old VNC setup. But it shouldn't hurt to install these packages anyway, just in case we want to use something like the old setup again.
sudo apt-get install ubuntu-desktop gnome-panel gnome-settings-daemon metacity nautilus gnome-terminal
OLD VNC server configuration
#!/bin/sh [-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
NEW VNC server configuration
Steps roughly follow https://www.digitalocean.com/community/tutorials/how-to-install-and-configure-vnc-on-ubuntu-16-04. Exact instructions below:
Install the following packages:
sudo apt-get install xfce4 xfce4-goodies sudo apt-get install autocutsel
Next, start up VNC:
vncserver:yourvncnumber
It will prompt you to set and confirm a password; do so. Then end the session:
vncserver -kill :yourvncnumber
This creates ~/.vnc/xstartup.
Either edit ~/.vnc/xstartup , or delete it and make a new file. IF MAKING A NEW FILE, enter this command as well:
chmod 755 ~/.vnc/xstartup
The new contents of ~/.vnc/xstartup should be:
#!/bin/bash xrdb $HOME/.Xresources startxfce4 &
After you've edited (or deleted/recreated) xstartup, start a new VNC desktop:
vncserver :yourvncnumber -geometry 1280x800
When you open the VNC viewer, you might get a "Welcome to first start" message; select "Use default config". (You may also get an error message saying Ubuntu had a problem but it doesn't appear to cause issues.)
That should be the basic VNC setup. Other convenience functions/packages/etc below:
Adding users
sudo adduser newusername sudo usermod -aG sudo newusername
Install additional packages
- Sublime Text
Enable copy/paste on VNC
Allows copy/paste between VNC windows and your computer. This has to be done at the beginning of every VNC session (so you should only need to do it once, unless you kill your VNC session, Agnew/Calculon/etc restart, etc).
run autocutsel -fork
Enable the Tab key https://www.starnet.com/xwin32kb/tab-key-not-working-when-using-xfce-desktop/
Open the Xfce Application Menu > Settings > Window Manager
- Click on the Keyboard Tab
- Clear the "Switch window for same application" setting
Keras setup
Install and run Anaconda:
sudo bash [name of anaconda .sh installer file] when prompted, install into: /opt/anaconda3
Next, do the CUDA setup:
Download CUDA installer from NVidia (or actually, just get from Agnew/Calculon/etc.)
Need to follow these pages' instructions for shutting down display manager and blacklisting Nouveau:
http://askubuntu.com/questions/788323/change-runlevel-on-16-04
http://askubuntu.com/questions/481414/install-nvidia-driver-instead-nouveau (top solution)
sudo systemctl isolate multi-user.target sudo systemctl enable multi-user.target sudo systemctl set-default multi-user.target
Those steps above should disable starting up in graphical mode; now run:
sudo nano /etc/modprobe.d/blacklist.conf
Add the following lines to that blacklist file (see Agnew/Calculon's blacklist files if you want to confirm you got it right)
blacklist amd76x_edac #this might not be required for x86 32 bit users. blacklist vga16fb blacklist nouveau blacklist rivafb blacklist nvidiafb blacklist rivatv
Now the following is probably not necessary but not a bad idea to run anyway
sudo apt-get remove --purge nvidia*
Now restart again. When restarted, you should be able to run the CUDA installer. Accepted most of the defaults; put samples in /opt/cuda_samples.
CUDA should now be installed. Next up is CUDNN -- need to download that from Nvidia developer program or just get from Agnew/Calculon/etc.
Unzip/untar/whatever the CUDNN files e.g. cudnn-8.0-linux-x64-v5.1.tar. Should yield a cuda directory with lib64 and include subdirectories. Copy the files in each of those to the corresponding /usr/local/cuda subdirectories (will require sudo), e.g. sudo cp lib64/* /usr/local/cuda/lib64/ (assuming you are in the cuda directory already).
Now we need to put CUDA in the path and set up its environment variable(s) -- should just need to add the following to each user's .bashrc file (and exit shell / re-enter shell to take effect):
export PATH="/usr/local/cuda/bin:$PATH" export set CUDA_ROOT=/usr/local/cuda
Also, it seems you need to enter sudo ldconfig /usr/local/cuda/lib64 at some point after installing all this stuff -- we think this has to do with making the system aware of the shared libraries? Seems like we need to enter it periodically but it's not clear when -- maybe after each restart???
below still needs revising
pip install theano pip install keras apt-get install git
Edit keras.json (in home folder)
Change backend: from tensorflow -> theano
Change image_dim_ordering: from tf -> th
Make .theanorc in home directory
Mount Farnsworth
Only needs to be done once. Will only unmount if we do so explicitly or if Agnew/Calculon/Lrrr/Ndnd gets rebooted (or if their network connection dies)
Install cifs-utils package: sudo apt-get install cifs-utils sudo mkdir /mnt/eeg_data_analysis (or whatever the share is named)
sudo mount -t cifs -o username=matt //farnsworth/eeg_data/analysis /mnt/eeg_data_analysis/ (replace username with your Farnsworth username)
Start VNC session
Enter in Terminal:
ssh yourusername@agnew/calculon.local vncserver :yourvncnumber -geometry (whatever, e.g.) 1280x800
Enter in VNC:
agnew/calculon.local :yourvncnumber
End VNC session
vncserver -kill :yourvncnumber