VisCog Wiki

VisCog Server

Off campus you will need to use the UW BIG-IP edge VPN.

For more information go   here. The viscog server part of an IBIC run ‘condominium cluster’ – i.e. a collection of high end machines that are sort of chained together. The machine viscog is owned by us. It has 22 TB of space and 28 cores. So anything except the hugest projects can be run on it. If you want to do something massive talk to Ione or Tina. The system runs much of the software we use, including Matlab, Freesurfer, FSL, and hopefully BrainVoyager, as well as many other things (listed on the IBIC wiki). Your user account on the IBIC system will use the same login as your UW identity

Organization of the UW VisCog Server

You have two places to work on the IBIC server The first is your home directory.

cd /mnt/home/username

This actually has a relatively small amount of space on it, but data put here is available across the entire ‘condominium’. The second place is on:

cd /mnt/viscog/FineLab or MurrayLab or BoyntonLab

This is where most of your data should go (unless you want to make use of the entire condominium). Try to think carefully about where to put things. Either have a folder with your name on it (preferred) or a folder that clearly refers to a large project. The goal is to avoid having a bunch of little projects in the FineLab (or similar) folders. That makes it very difficult to work out when to move things to archival storage. Some folders are backed up regularly. Others are in archive mode and are only incrementally backed up every 6 months.

Moving data to and from the server

Expandrive

The lab has a multiple licenses for a product called ExpanDrive that allows you to mount viscog onto your desktop. ExpanDrive also allows you to mount external cloud sites including Google Drive, Dropbox etc.

To get to mnt, put the following as Drive Root

/mnt/viscog/FineLab

FTP methods

Traditional ftp methods should also work, and will be better for big datasets. The name of the machine is simply viscog.ibic.washington.edu. Remember to use the sftp protocol. Perfectly acceptable ftp clients include:

WinSCP :server: viscog.ibic.washington.edu user name: UW username password: UW password port: leave empty or try 22

Creating a remote desktop to viscog

How you connect can dictate a lot. Some programs will only run on one of the methods described below {such as brain voyager}, while some may run but only render correctly using the x2go xterm method {tksurfer}, while others may run and render fine, but be unusable slow through XFCE. This also may vary from computer to computer, just to keep things interesting.

x2go client

This allows you to show a remote desktop for viscog on your home machine.

1. Download a copy of client x2go

2. Click on new session. Session name: whatever you want Host: viscog.ibic.washington.edu Login: your UW login path: /mnt/viscog/FineLab (for example) SS port: 22 Select session type {default: XFCE, but see below} Click ok

3. The session should now appear on the right hand side. Double click on it, and you should be able to login with your UW ID. If it’s painfully slow let Ione know. There will be a few warnings that you should ignore.

**Note on session type:** For faster performance or if programs aren’t running on XFCE, try xterm To do this, create a new session as described above. Under “Select session type” choose “single application” from the pulldown menu rather than XFCE. Once selected, type “xterm” {without quotes} into the “command” box to the right of “single application” Click OK and connect as described. XFCE is a remote desktop, but has some problems and a lot of “overhead” which make it laggy. Coding and anything that requires lots of graphic rendering can be painful. XTERM opens a command line from which you can launch anything other program you like, such as matlab or tkmedit. It’s a good option if the program you’re trying to use on XFCE is either slow or not rendering properly. Launching programs from xterm feels much more like you’re using them locally, with the downside being the lack of desktop GUI. Contact Tristram with any questions on this step. {If this doesn’t work, consider trying fastX {next section} or direct x11 forwarding. Programs such as xMing and MobaXterm may work, but I used xMing only briefly, years ago.

Fastx

This allows you to show a remote desktop through your browser (without installing software) simply link to

https://viscog.ibic.washington.edu:3443

Login and then select the preferred user interface (fastest is probably XFCE). Similarly to connecting to viscog, you can connect to other servers on the ibic engine through browser by just replacing viscog with other server names. (Do not forget to check usage through qmon and be nice when using other clusters) e.g.

https://adrc.ibic.washington.edu:3343

Not all clusters have the software to run fastx, however -x2goclient works most of the time. Contact the system administrator if you really want to connect to server via browser.

Connecting from outside campus

If you are outside of campus, you will need to use Husky OnNet VPN client to login to get on campus network.

1. Link for downloading the software. the installation and launch are pretty straight forward.

Here are detailed descriptions and instructions

2. For linux user, it is also very simple, but a little different . Please see following instruction to connect. You can also find it later to on our WIKI page: Connect to Husky OnNet by browsing to: • https://huskyonnet.uw.edu – UW Campus Network Traffic Only (recommended) • https://huskyonnet-ns.uw.edu – All Internet Traffic (special requirements use only)

1. When asked, enter the appropriate username and password.

2. A pop-up window showing download, choose open with option “software install”

3. Then follow the onscreen instruction, click on link on option 2 to connect. Select 64 bit deb Ubuntu Debian; open with gpk-install-local-file

4. You can minimize this window and remain connected, but closing this window or browser completely will terminate your VPN session.

After the first time you use the Husky OnNet, you don’t need to download and install anymore, but go through sthe login steps

Working on the viscog server

A list of installed applications

Matlab on VisCog

Running Matlab.  Go to Applications Menu, select terminal emulator, and type matlab in the terminal

Your default Matlab shortcuts will be in emacs. For those of you born after 1965 this may not be ideal. In order to check the MATLAB Keyboard preferences

Environment — > Preferences –> Keyboard –> Shortcuts. If the “Active Settings” option is set to “Emacs”, the Copy (Ctrl+C) and Paste (Ctrl+V) features will be disabled.

To enable these features, change the “Editor/debugger key bindings” option to “Windows” or “Mac” and click on the “Apply” button in the right bottom corner of the “Preferences” window.

Running Brainvoyager

Instructions are here

Being ‘nice’

If you are running a lot of processes consider being ‘nice’.

If you type

top

in a local terminal you can see a list of all the ongoing processes. Each has a PI value (which is the priority value assigned to that kind of process by the viscog scheduler. The PR is the actual priority value of the process.

Nice is used to push your process up or down in priority compared to other similar processes owned by you and other users. Priority is represented in terms of how long you need to wait for CPU time so low numbers are high priority. Basically a nice of -19 will reduce your PR score by 19, and put you at the top of the queue. A nice value of 19 will add 19 to your PR score and put you at the bottom. The default is 0.

To change your nice, find the job number (e.g. 1344) of the process you want to ‘nice’. That’s the PID column in ‘top’. Then in a terminal window, to go to the bottom of the queue type:

renice -n 19 -p 1344

To go to the top of the queue type:

renice -n -19 -p 1344

When working on other people’s clusters (e.g. CHDD) **be nice!**

Monitoring use of VisCog

Sometimes people from outside VisCog can run heavy processes. They are meant to ask permission, but sometimes don’t. Or you might be competing with a VisCog member. To check who else is using the server:

1. In a local terminal type: top

2. In x2go or Fastx (not your local desktop) open a browser and type

local:2812

in the address part of the window.

3. You should also be able to get more detailed monitoring info by typing this in your browser

http://viscog.ibic.washington.edu:8080/monitorix/

4. qmon is another tool to monitor when you want to see **all** servers on the IBIC cluster. It should be on the system path so you can just type qmon in a local terminal. A window with lots of icons will appear. Click the second one on the top right //Queue Control//. Click on the third tab //Hosts//.

But if it is not in your system path, running the following command will put it in the path:

. /opt/SGE/sge6_2u5/default/common/settings.sh

You will be able to see all the clusters and their CPU usage.

Taking viscog off the grid

If you need to run viscog cores locally -at viscog group level- or if someone from the ibic grid needs all computing cores and you do not want them to access viscog cores you can run

sge_placeholder <h>

where h is the number of hours you want viscog to be shut off to the other users in the grid. This should not interfere with the jobs started within viscog group.