Remote Visualization - GPUT

GPUT: A resource for remote visualization with GPU-accelerated apps

MSI's GPUT resource consists of four Linux servers, each with 24 GB memory, two quad-core Xeon CPUs, and four Nvidia GeForce GTX 480 GPUs. MSI users can run GPU-accelerated scientific applications on these servers, using VirtualGL and TurboVNC for an efficient and responsive remote display.

The GPUT hardware is also used for tutorials on GPU programming at MSI. You can view our past presentations in the tutorial materials page, specifically under the category, "GPU, CUDA, and related topics".  On tutorial days, the system will be reserved and unavailable for general use.

The GPUT resource is available to all MSI users. A limited set of applications is available, including COMSOL, Avizo, PyMOL, Schrodinger, and Sybyl-X. Contact help@msi.umn.edu to request additional applications.

Prerequisites

Before using GPUT you will need two pieces of software installed on your computer: TurboVNC and an SSH client.

Installing TurboVNC

See the VirtualGL web page for instructions on downloading and installing TurboVNC on Windows, Macintosh, and Linux. Note that you do not need to install the VirtualGL software, just TurboVNC.

Installing an SSH client

On Windows, download and install PuTTY. Linux and Macintosh systems include an SSH client, so no further action is required.

Starting a TurboVNC session

To start a TurboVNC session on a GPUT node, first connect with SSH to login.msi.umn.edu. Detailed instructions are available.

Once you are connected, type:

isub -q gput

This will give you the default 2 hours walltime and 4 GB memory. See the isub page for additional options you can pass to isub to modify these defaults. The maximum wall time on GPUT is 72 hours. The max CPU for 72 hours is 4.

You can also pass the -g option to specify a non-default geometry (screen resolution):

isub -q gput -g 1600x1200

After a few seconds, a message should appear similar to this:

isub screenshot

On Linux or Mac, open a new terminal window and enter the command specified in the message (similar to what you see above). On a Windows systems follow the instructions specified in the message.

The first time you connect to each GPUT node (gput01, gput02, gput03 and gput04), you may need to SSH from your computer to the specified GPUT node. More information can be found below at First time connection to a node.

Please Note:

  • You will need to enter your MSI username and password at least twice - once when starting the SSH tunnel and again to connect to the TurboVNC session.
  • The TurboVNC client will suggest a username, which will may be incorrect. Instead, type in your MSI username.

Following these instructions will set up a secure tunnel from your computer to a GPUT node at MSI, and connect TurboVNC to that tunnel.

First time connection to a node
If the VNC connection fails it may be necessary to SSH from your computer to the GPUT node. Follow the steps below:

  • Open a terminal (OSX / Linux) or Putty (Windows) and SSH to the GPUT node that is assigned to your job.  You can find the GPUT node in the output that follows your isub job submission.For example, from the above screenshot the GPUT node is: gput02.msi.umn.edu.
  • SSH to that node using your MSI username.
  • If you are prompted to accept the SSH key type or click "yes". You can then close that SSH session and try to connect with VNC again.
  • If you still cannot connect, try renaming or removing the file .ssh/known_hosts

This is a process that only needs to be done once for each GPUT node.

If you have any trouble with this process or if this still doesn't resolve the connection problem please email help@msi.umn.edu

Save these instructions. If your session is cut off for any reason, you may be able to reconnect to it following the same steps, without losing your current job.

Note that each time you run "isub -q gput", a new session is started, and any previous GPUT sessions are terminated.

Running GPU-accelerated apps

Once you have started your TurboVNC session, you will be presented with a basic XFCE desktop. Start a Terminal by clicking the icon in top left corner (or click Menu, then Terminal Emulator). Now, to start a GPU-accelerated application like PyMOL, run:

module load pymol
vglrun pymol

Important: Please note the vglrun in the command above. Without it, PyMOL and other OpenGL accelerated apps will fail to run.

Performance tweaking

The default TurboVNC settings work well over a typical DSL or cable internet link. Over a slower link, you may need to adjust settings to get acceptable responsiveness.

In the Windows TurboVNC Viewer, these parameters can be adjusted by accessing the Options dialog box (click on the “Options” button in the “TurboVNC Connection” dialog box or, after connecting to the server, click on the Connection Options button in the toolbar.) On a slow link, try setting the Encoding to "Tight + Low Quality JPEG". The image quality will degrade somewhat in favor of speed.

In the Linux and Mac TurboVNC Viewer, these parameters can be adjusted before starting the viewer connection by adding the following options to the vncviewer command. The options -quality and -samp will degrade the image quality somewhat in favor of speed. In the Linux and Mac TurboVNC viewer, press F8 after connecting to bring up the options menu.

For example:

/opt/TurboVNC/bin/vncviewer -quality 29 -samp 4x -via username@gput02.msi.umn.edu localhost:1

The screenshot below is from the Windows TurboVNC Options Dialog. Use the circled options to reduce image quality in favor for faster performance. 

The screenshot below is from the Linux TurboVNC Options Diaglog. This dialog box can be opened by pressing F8 once the viewer connection has been established. Use the circled options to reduce image quality in favor of faster performance.