== Graphical Login (VNC) [[PageOutline]] [[span(style=color: #FF0000, '''Graphical Login (VNC) only with JURECA login possible.''')]] {{{#!table style="border:none; text-align:left; margin:0px" {{{#!th align=left,style="border: none" [[Image(https://upload.wikimedia.org/wikipedia/en/thumb/5/51/Virtual_Network_Computing_%28logo%29.svg/220px-Virtual_Network_Computing_%28logo%29.svg.png,100px, align=left, margin=0, link:vnc3d)]]\\ [[Image(http://www.virtualgl.org/pmwiki/uploads/Main/virtualgl.gif, 200px, align=left, margin=10, link=wiki:vnc3d)]] }}} {{{#!th align=left,style="border: none" Remote visualization, either implemented within visualization applications themselves or through server software, \\ eliminates the need for off-site file transfers and allows HPC users to run a broad range of visualization tools \\ in-place on the supercomputer where the data resides and more compute resources are available. A graphical login using Virtual Network Computing (VNC) simplifies the access to remote visualization. \\ A broad variety of Linux applications with graphical user interface and/or need for OpenGL can be used directly on the supercomputers via VNC. }}} }}} VNC provides a complete graphical and remote desktop by \\ * transmitting the keyboard and mouse events from your computer to the remote machine and \\ * relaying the graphical screen updates back in the other direction. VNC is * platform-independent (VNC viewers are available for almost any operating system) * application-independent (no need for remote visualization support inside the application) * multiple clients may connect to a VNC server at the same time sharing the same session (support, presentation, group discussions) \\ === Ok, what do I have to do? {{{#!table style="border:none; text-align:left; margin:0px" {{{#!th align=left,style="border: none" [[Image(strudel_icon.png, 60px, align=left, margin=0, link=wiki:vnc3d/strudel)]] }}} {{{#!th align=left,style="border: none" '''[wiki:vnc3d/strudel Strudel]''' (Scientific Remote Desktop Launcher) * cross-platform application for Linux, MacOS and Windows * Strudel '''should be used''' to access remote graphical desktop on JURECA * developed * by the Multi-modal Australien ScienceS Imaging and Visualization Environment ([https://www.massive.org.au MASSIVE]) team * under the NeCTAR-funded [https://www.massive.org.au/cvl Characterisation Virtual Laboratory] ................................................................................................................................................................................... }}} }}} \\ alternative option) {{{#!table style="border:none; text-align:left; margin:0px" {{{#!th align=left,style="border: none" [[Image(manual_icon.png, 60px, align=left, margin=0, link=wiki:vnc3d/manual)]] }}} {{{#!th align=left,style="border: none" '''[wiki:vnc3d/manual vncserver/ssh/vncviewer]''' (manual connection) * manual start of VNC server on JURECA * manual tunnel for VNC data * manual start of VNC viewer on local machine ................................................................................................................................................................................... }}} }}} \\ === VNC - more details VNC follows a very general approach, where a remote graphical desktop on one node of the remote cluster is started. \\ On the user's workstation only a lightweight VNC viewer has to be installed. \\ The graphical screen of the remote desktop is send as an image from the cluster to the viewer on the fly. The user can work with this remote graphical desktop in the usual way, just by interacting with keyboard and mouse. \\ This is a very convenient way to work on a remote machine, not only for data visualization. VNC offers the ability to detach from a session (running in a VNC server) and then attach back at a later time. \\ That means, that the user can close the VNC viewer on his/her computer and any application started in the VNC session on the server keeps on running - they do not pause or even be killed. \\ Later on the user can connect back to the same VNC session (even from a different computer) and keep on working. \\ [[Image(Trac_Setup_VNC.png, 380px)]]\\ ==== hardware accelerated rendering (OpenGL) [[Image(https://upload.wikimedia.org/wikipedia/commons/thumb/6/67/X11transport.png/600px-X11transport.png, 200px, align=right, margin=0)]] Whenever an OpenGL capable visualization software, like !VisIt, is started on the remote cluster node, \\ OpenGL commands can be redirected to the GPU of this node with the help of [http://www.virtualgl.org VirtualGL]. \\ * ... using '''vglrun''' (e.g. vglrun paraview) This way the hardware accelerated rendering capabilities of a cluster node (if available) can be exploit for remote rendering. \\ (attention: __without__ VirtualGL software, rendering using the CPU instead of the GPU must be used (if available), which is much slower). ==== Use hardware acceleration in your VNC session Any OpenGL application running in your VNC session should be started with '''vglrun''' to use the hardware acceleration provided by the visualization nodes. ==== e.g. ParaView Open a terminal in your VNC session and: {{{ #!sh # What versions of ParaView are available? module spider ParaView # load ParaView dependency module load intel-para # load ParaView module load ParaView }}} {{{ #!sh # start ParaView Server and GUI using VirtualGL for hardware acceleration srun -n 24 vglrun pvserver vglrun ParaView }}} Connect to the pvservers on localhost:11111 ==== e.g. !VisIt Open a terminal in your VNC session and: {{{ #!sh # change Stage module use /usr/local/software/jureca/OtherStages module load Stages/.Stage1 # What versions of VisIt are available? module spider VisIt # load VisIt dependency module load intel-para/2015.07 # load VisIt module load VisIt/2.10.0 }}} {{{ #!sh # start VisIt using VirtualGL for hardware acceleration vglrun visit -hw-accel }}} == Hints * press F8 to enter VNC-Viewer Options (example: toggle to full screen) * sync clipboard between client and server {{{ #!ShellExample vncconfig -poll=100 }}} * To reset your VNC-password delete ~/.vnc/passwd ---- any feedback welcomed - [mailto:h.zilken@fz.juelich.de], [mailto:j.goebbert@fz-juelich.de]