A NOMAD user's guide to the MPCDF remote visualization service
MPCDF User accounts for NOMAD
in order to get access to remote visualization facilities at the MPCDF NOMAD members are invited to request an MPCDF account via this link
Client software requirements
Visualization sessions on Hydra run on top of a VNC server to which the user connects via the Internet. A VNC viewer and an SSH client are the software components necessary on the client side. The VNC server used on Hydra is TurboVNC (Version 1.2.3) which is recommended on the client side as well.
Installation packages for all relevant operating systems can be downloaded at http://sourceforge.net/projects/turbovnc/files/1.2.3/. Newer versions may work as well.
On Linux systems, TurboVNC requires libjpeg-turbo, available at http://sourceforge.net/projects/libjpeg-turbo/files/1.4.2/.
In addition, the packages are available on Hydra at /u/system/SLES11/soft/remotevis/packages/client/.
In particular, the software recommendations for popular operating systems are:
Linux and Mac clients
- TurboVNC Make sure to add /opt/TurboVNC/bin to your PATH environment variable.
- libjpeg-turbo
- SSH client (comes with your operating system, typically)
Windows clients
- TurboVNC
- SSH client. The PuTTY SSH client is recommended. It can be downloaded at http://www.chiark.greenend.org.uk/~sgtatham/putty/download.html.
How to launch a remote visualization session on Hydra
Log in to hydra.rzg.mpg.de
(via gate.rzg.mpg.de
) and load the environment module "remotevis":
$ module load remotevis
If you haven't used Hydra remote visualization before, it is necessary
to create a user-specific configuration in your homedirectory. The
setup_remotevis
script is used to do the configuration work. Issue
$ setup_remotevis
and follow the instructions. The script will set up a VNC password and
copy some configuration files into your homedirectory. In particular, a
LoadLeveler submit
script
that can be used right away is placed at ~/remotevis/remotevis.cmd
.
To submit a visualization session to the LoadLeveler batch system, proceed as follows:
$ cd ~/remotevis
$ # adapt remotevis.cmd to your needs (e.g. memory requirements, job run time)
$ llsubmit remotevis.cmd
The job is now queued. Once it is starting, the system will send an email with information on how to connect to the VNC session.
How to connect to a remote visualization session on Hydra {#how-to-connect-to-a-remote-visualization-session-running-on-hydra}
When a remote visualization session is starting, the system sends a notification email with information on how to connect. The default email address is $-cmliteralUSER@rzg.mpg.de. The email address can be changed by setting the VIZ_MAILTO environment variable in the LoadLeveler submit script.
In addition, the notification email is saved to a text file at $HOME/remotevis/notification.txt.
Linux clients {#linux-client}
For Linux clients, the TurboVNC viewer command line is explicitly given in the email. It looks as follows:
$ /opt/TurboVNC/bin/vncviewer -via gatezero.rzg.mpg.de hydra::5591[0-7]
Paste the command string from the email into a terminal window and execute it. You will be asked for two passwords.
The first password prompt is issued by the SSH login to the gatezero machine. Enter your MPCDF (Kerberos) password. In case you have a valid Kerberos 5 token and an appropriate configuration on your machine, the gate machine may not query for a password.
The second password prompt is issued by the VNC server on Hydra. Enter
your VNC password (that was entered initially during the
setup_remotevis
step).
Mac clients {#mac-client}
Unlike on Linux, the Mac vncviewer executable does not directly support establishing an SSH tunnel using the "-via" option. Therefore it is necessary to create an SSH tunnel manually.
1. Open a terminal window and create an SSH tunnel as follows:
$ ssh USERID@gatezero.rzg.mpg.de -L 5999:hydra:PORT
where USERID is your MPCDF user ID, and PORT is the TCP port the VNC viewer is listening on. The PORT number is sent to you in the notification email, it takes values between 55910 and 55917. Enter your MPCDF (Kerberos) password. When the connection is successful, you may minimize the terminal window.
2. Open a second terminal window and connect vncviewer
to the local
relay port as follows:
vncviewer 127.0.0.1:99
Enter your VNC password (that was entered initially during the
setup_remotevis
step).
Windows clients {#windows-client}
Unlike on Linux, the Windows vncviewer executable does not directly support establishing an SSH tunnel using the "-via" option. Therefore it is necessary to create an SSH tunnel manually.
1. Make sure you have installed the PuTTY package. Open a command
prompt window and cd
into PuTTY's installation directory. Then, create
an SSH tunnel as follows:
plink.exe USERID@gatezero.rzg.mpg.de -L 5999:hydra:PORT
where USERID is your MPCDF user ID, and PORT is the TCP port the VNC viewer is listening on. The PORT number was sent to you in the notification email, it takes values between 55910 and 55917. Enter your MPCDF (Kerberos) password. When the connection is successful, you may minimize the terminal window. Alternatively, you may use the PuTTY GUI to set-up the SSH tunnel and connect to the gate machine.
2. Open the TurboVNC viewer and enter 127.0.0.1:99
. Enter your VNC
password (that was entered initially during the setup_remotevis
step).
How to quit a VNC session {#applications}
To quit a VNC session, close all applications, click the GNOME menu button and select Logout. The desktop environment and the VNC server will then terminate. The associated LoadLeveler job will terminate as well.
Please note that at the end of the period of time that was requested at job submission, the VNC session will be killed by the LoadLeveler. A popup window will notify you five minutes in advance.
Applications
When the remotevis module is loaded, the module environment is extended
with a new section labeled "visualization". This is the case in a
visualization session, by default. Type module avail
in a terminal to
get a list of the available packages, and module load PACKAGE
to get
access to a package.
Note: To exploit GPU acceleration, always prefix OpenGL-enabled
executables with vglrun
. For example, to start the VisIt GUI, one
would execute:
$ module load visit
$ vglrun visit
The software page provides an overview on the available visualization applications.
Interactive data analysis and visualization
For interactive data analysis and visualization, the open source packages VisIt and ParaView have proven useful. Both are available via environment modules. More details and basic instructions are available on the software page.
Handling of image files
Typically, visualization applications will output a (large) number of image files, e.g. in PNG format. The following applications are available on the visualization nodes either directly or via an environment module and are useful to handle image 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
from the command line. - ImageMagick, a collection of command-line open-source image manipulation tools
- ffmpeg, a command-line based video encoding suite. A usage example of creating an MP4 movie from a sequence of image files is given at: https://trac.ffmpeg.org/wiki/Create%20a%20video%20slideshow%20from%20images