Remote Visualization with TurboVNC
To render large amounts of data with programs like vapor, palma50 is equipped with fast graphics cards. This makes it possible to render the data directly on Palma without transferring it via the LAN to you local computer. To keep the amount of submitted data small, only the desktop output of palma50 is transferred via a vnc session. For a fast transmission, turboVNC is used. The client for Linux and Windows can be downloaded
here
.
Initial configuration
Create the executable file ~/.vnc/xstartup.turbovnc on palma50 with the following content:
#!/bin/sh
startxfce4 &
Starting the VNC server
Connect to palma50. Under Linux type:
ssh palma50
Under Windows use putty
/opt/TurboVNC/bin/vncserver :{port number between 10 and 99} -geometry 1200x1000
The switch -g determines the size of the winows. To end the session, type:
/opt/TurboVNC/bin/vncserver -kill :{port number}
All users share the ports between 10 and 99. If it is already used, just pick another.
Connecting to the session (from your own computer)
With Linux:
/opt/TurboVNC/bin/vncviewer -via User@palma50 localhost:{Portnummer}
The command established a ssh-tunnel and opens the connection to the vnc session on palma50.
With Windows:
Create a ssh-tunnel with putty (in this example for port 10):
As long as the ssh connection stays open, the turbovnc client is able to connect to localhost:{port number}
Executing 3D applications
/opt/VirtualGL/bin/vglrun [vglrun options] {application_executable_or_script} {arguments}
for example VAPOR via
module add vapor
/opt/VirtualGL/bin/vglrun vaporgui
Software for visualizing data on palma50
At the moment there are different programs avaliable, which can be added to the environment variables via modules:
GPGPU
palma50 can be used to develop and execute codes that use the techniques CUDA and
OpenCL.
Choosing the GPU with CUDA-codes
Since there is no batch system on palma50, it is necessary to choose the GPU by hand. For this purpose, use the command
cudaSetDevice()
Example:
//--------------------------------------------------
// Use specific GPU
int gpu=3;
cudaSetDevice(gpu); // Choose GPU
//--------------------------------------------------
Please use only the GPUs 1-3 for GPGPU so card number 0 remains free for the remote visualization.
Demo codes
The nVidia demo codes for CUDA and
OpenCL are located in /usr/local/cuda-7.5/samples
Monitoring the usage of the GPUs
Unfortunately, nVidia disabled the support for the usage of the GPUs in CUDA version 4. It is therefore neecssary to monitor the temperature of the GPUs to find the cards in use. In the webinterface
Ganglia
this can be done in a graphical manner.