Lab Information

Software Development Laboratory - ENGR 138

This lab has 30 desktop iMac computers and is used to teach several courses. It is also available for students to work on their assignments. It is mostly used for lower-level courses.

Hours of operation:

Monday - Thursday   8am - 12am
Friday 8am - 5pm
Saturday 12pm - 5pm
Sunday 12pm - 12am

Multi-GPU Machines

The CS department has three machines with 4 Nvidia 1080 Ti GPUs each available for student use.  The servers can be accessed with your UCCS login from on campus or through the campus VPN.

Hostname IP Address
cs-gpu1.uccs.edu 128.198.166.17
cs-gpu2.uccs.edu 128.198.166.16
cs-gpu3.uccs.edu 128.198.166.18

The machines run Centos 7 and have the Nvidia drivers installed.  You should run deep learning tasks in a Docker environment which has the necessary frameworks pre-installed.  We recommend the Deepo Docker images.  You will need to be added to the Docker group in order to run Docker -- please contact EAS IT and request to be added.

To connect to a machine with X11 forwarding and port forwarding for Tensorboard to your local machine:

DISPLAY=:0 ssh -Y -L 8888:localhost:8888 -L 6006:localhost:6006 cs-gpu2

With port forwarding, you can view Tensorboard from your local machine by accessing 127.0.0.1:6006.  X11 applications will also appear on your local machine (assuming you have X11 running on your local machine).

See the Deepo page for information on how to install the images.  To start a Deepo Docker environment with Python 2.7 and Tensorflow, and port forwarding for Tensorboard:

nvidia-docker run -p 127.0.0.1:6006:6006 -it -v $HOME:$HOME ufoym/deepo:tensorflow-py27 bash

In the Docker environment, you will be logged in as root.  Any changes you make to the file system will not be saved -- the next time you start the Docker environment, it will reset to the default state.  However, the command above links your home directory to the the same path in the Docker environment, so that you can access files as needed.

Because the Docker environment resets each time it starts, you will need to install any necessary packages or libraries each time you start it.  You also should set an environment variable so that your code only accesses one of the GPUs -- otherwise, Tensorflow will automatically allocate all GPUs so that others cannot use them:

export CUDA_VISIBLE_DEVICES=0

Replace 0 with 0,1,2, or 3, depending on which GPU you want to use.

Finally, we recommend running Docker in tmux so that you can come back to your session even if you log out.  To start tmux:

tmux

To exit from tmux without ending the session, press <Ctl-B> <d>.

To return to your tmux session:

tmux attach