Quick start Guide for the HP Visualization Cluster
How to connect to the visualization cluster
The easiest way to access the cluster is to start a TurboVNC remote desktop session and connect to it. RZG visualization staff recommends this mode of operation since it will work from any Internet connection.
To obtain the TurboVNC and VirtualGL client software for your operating system, log into the reservation system
and use the download section.
TurboVNC: Quick start guide for Linux/UNIX clients
Note that step (1) is necessary only once.
Log in to the RZG gate machine using
ssh -X email@example.com, and then to the head node viz00 using
ssh -X firstname.lastname@example.org(do not omit the '-X' flags). This step creates your home directory on the visualization cluster and triggers the initial setup of the environment. You'll be asked for a password which is needed later to connect to your remote TurboVNC desktop. Choose the VNC password different from your login (=Kerberos) password.
Open the reservation system at
and log in using your username and Kerberos password. Click "Start task now", configure (1 GPU recommended) and start a TurboVNC remote visualization desktop. The final page gives (in case of a successful reservation) information on how to connect to the remote desktop.
First, make sure that you have installed TurboVNC on your local machine. Follow the instructions given at the end of step (2). It may be necessary to enter two passwords, first your Kerberos password to establish a tunnel to RZG's gate machine, and second the VNC password you have entered in step (1). (Direct connections without the "-via" flag, which work from parts of the Garching campus network, are not recommended for security reasons.)
Start right away! By default, a preconfigured GNOME desktop shows icons which may be double-clicked to start the major visualization applications. Note that your session will be terminated automatically at the end of the reservation period, so make sure to save your work regularly and log out in time. A warning will pop up before the session is terminated.
TurboVNC: Quick start guide for Windows clients
Detailed instructions on how to connect from Windows clients are avalable here.
TurboVNC: How to handle the image quality vs. network bandwidth problem
Depending on the client's downstream bandwidth, the following command line arguments for TurboVNC viewer may be useful to improve the usability of the remote desktop.
- bandwidth <2 MBit/s (Modem, ISDN, slow DSL):
- bandwidth between 2 MBit/s and ~50 MBit/s (DSL, cable):
- bandwidth >50 MBit/s (LAN, DFN):
- Instead of adopting one of the three aforementioned profiles, it is possible to do fine tuning of TurboVNC's JPEG compression by setting
-quality N, where N is an integer between 1 (lowest quality, highest compression) and 100 (best quality, lowest compression).
Note that the Windows client (vncviewer.exe) expects the use of
/ instead of
It is always possible to request a lossless view on the remote desktop by pressing the key combination Shift+Control+Alt+L. Hence, on a slow connection, it may be of advantage to work with -lowqual, and manually request a lossless refresh from time to time.
Extensive information is provided by the TurboVNC documentation which is available from the download section in VSRT.
VirtualGL & X forwarding: Quick start guide for Linux clients (at Garching or via VPN)
In addition, a second mode of operation is supported which seamlessly integrates the application running on the visualization cluster into the users local desktop environment. For GUI elements, classical X forwarding is used, whereas OpenGL content is transported in a compressed stream to the client using VirtualGL. Note that, in order to set up the aforementioned stream, the server has to establish a TCP connection to the client. Therefore, VirtualGL will only work for local clients at Garching (RZG, IPP) and for clients which use a VPN connection. To use this service, make sure that you have installed VirtualGL on your local machine and follow these steps:
- Open the reservation system at
and log in using your username and Kerberos password. Click "Start task now", select and configure (1 GPU recommended) "VirtualGL interactive shell". Finally, press "Start".
- Read the instructions carefully and follow these instructions in the correct order. Do not press the "Continue" button until you are prompted in the second terminal window to do so. If prompted (red message), click "Continue" to finalize your reservation, then press Enter in the second terminal window to start using the VirtualGl enabled shell.
- From the terminal window, you may start the standard applications using the "rzg-..." wrapper scripts (see below). Arbitrary OpenGL applications can be started using
vglrun program_name. Equal child terminal windows can be opened using
- Once you have finished your work, close the session by calling
exit(also in all child terminal windows). Note that X applications will not work any more when the session has run out of time. A warning will pop up before the session is terminated.
Using VirtualGL from Windows clients is not supported. Note that TurboVNC is more efficient on low bandwidth connections than VirtualGL & X forwarding.
Interactive data analysis & visualization
The standard applications (VisIt, ParaView, Vapor, Voreen) can be started most conveniently by using the icons on the GNOME desktop. In addition, wrapper scripts starting with "rzg-" may be used from a terminal (see
/u/system/bin). These are
rzg-paraviewto start the ParaView GUI,
rzg-vaporguito start the Vapor GUI,
rzg-visitto start the VisIt GUI,
rzg-voreento start the Voreen GUI,
rzg-avizoto start the Avizo GUI, only available on the machine
rzg-vmdto start VMD,
rzg-mpirunto start MPI processes on the allocated resources using OpenMPI (*).
(*) The environment variable VSRT_MPITASKS holds the number of processes, the variable VSRT_MACHINEFILE points to the machinefile which lists the currently allocated resources. By default, there are 4 (8) MPI tasks per allocated GPU (node). The standard compiler wrappers (e.g. mpicc) point to gcc. Note that the visualization nodes are not dedicated to run simulation code, rather the OpenMPI compiler is used by RZG staff to build the standard applications. You may test the functionality of the MPI environment by calling
Do not load and use the standard applications via the "module" command unless stated otherwise. To run IDL, do
module load idl first. IDL can be started with OpenGL acceleration via
vglrun idl (see also
vglrun idldemo for examples of IDL's 3D capabilities).
See the software page for more information.
Interactive parallel rendering with ParaView
For large datasets, you may use several MPI processes to accelerate ParaView. Note that multi-GPU rendering is currently not supported. Note, in addition, that using several processes does not necessarily mean a speedup. To use MPI parallel rendering from your ParaView GUI, click "File -> Connect", select "VIZ-Parallel", and click "Connect". Minimize any VTK window which may pop up.
Interactive parallel rendering with VisIt
A preconfigured host profile is installed in your VisIt directory (~/.visit/hosts). The host profiles are updated with information on the allocated resource each time you log in. To start a parallel engine from your VisIt GUI, select "File -> Open file...". Select the host on which the current VNC session is running (e.g. viz02.rzg.mpg.de). After chosing the files to be visualized, start the parallel rendering engine. Note that parallel rendering will fail if you data format is not adequate (in case of .bov files, the number of subdivisions should equal the number of MPI processes).
Non-interactive parallel rendering with VisIt
VisIt provides a powerful Python API which can be used to program complete animations. Typically, the work flow is to first explore data interactively in order to find e.g. useful color scales and view points, and use that knowledge in a second step for a VisIt Python script.
The following header may be used on the visualization cluster in a VisIt Python script for parallel rendering.
### # Header for a VisIt Python script to get information # on allocated resources from environment variables. # (Make sure to adapt .bov files to the number of MPI processes.) # To render within a TurboVNC session, use # $ vglrun visit -cli -noconfig -s script.py # or # $ visit -nowin -cli -noconfig -s script.py # to render withour a preview window. # import os machinefile = os.getenv("VSRT_MACHINEFILE") mpitasks = os.getenv("VSRT_MPITASKS") launchArguments = ("-l", "mpirun", "-np", mpitasks, "-machinefile", machinefile) OpenComputeEngine("localhost", launchArguments) ### # Continue as usual: OpenDatabase(localhost:...,), AddPlot, etc. ...
To render with a preview window, use
vglrun visit -cli -noconfig -s yourscript.py.
To render without any window, use
visit -nowin -cli -noconfig -s yourscript.py.
For further detail on VisIt Python scripting, have a look at the manual on the VisIt webpage.
Handling of image files
Typically, visualization applications will output a (large) number of image files, e.g. in JPG format. The following applications will help you to handle these files.
- Nautilus, the GNOME file explorer. Select "Icon view" to get a preview of image files in a folder.
- Eye of GNOME, the GNOME image viewer. Double-click a file in Nautilus, or use
eog file.jpgfrom the command line.
- GIMP, an open-source image editor
- ImageMagick, a collection of command-line open-source image manipulation tools
- mencoder, a command-line based video encoding suite. Use
module load mencoderfirst.
Video encoding is possible with mencoder/x264 (
module load mencoder). The directory
/u/system/templates/video contains example scripts on how to convert a series of image files (jpg, png) to a video file:
CreateAVI.sh: Create .avi files using libavcodec. These files work with WindowsXP (or newer).
CreateMP4.sh: Create .mp4 files using the x264 codec. These files work with Windows7 and MacOS X.
Copy and adapt these scripts to your needs. In general, MP4 provides better quality and should be preferred. Two-pass encoding may further improve quality. Popular open source video players usually play the videos generated with these scripts.
Preparing a presentation
To build a presentation with an office suite (OpenOffice, Microsoft PowerPoint, ...), copy your visualization results (movies, pictures) to AFS and continue to work on your local workstation. Alternatively, LaTeX (e.g. with the Beamer class) can be used directly on the visualization cluster. A recent version of TeX Live is installed. Do not reserve visualization resources just to use LaTeX, simply log in to
viz00.rzg.mpg.de via SSH and start using it.