||= '''Remote Visualization''' =||= =||= pro =||= contra =|| {{{#!td ''' Client-Server mode on visualization node(s) '''\\ [#SampleParaViewSessionJURECA See sample session] }}} {{{#!td [[Image(PVServerOnVisNode.png, 400px)]] }}} {{{#!td - hardware accelerated OpenGL is fast - rendering on GPU - ParaView server can be run in parallel(but number of vis nodes limited) }}} {{{#!td - user has to install ParaView on his workstation - batch job needed - ssh tunnel needed }}} |----------------------------------------------------------- {{{#!td ''' Client-Server mode on compute node(s) (without X/GPU) '''\\ [#SampleParaViewSessionJURECAComputeNodes See sample session] }}} {{{#!td [[Image(PVServerOnComputeNode.png, 400px)]] }}} {{{#!td - ParaView server can be run in parallel on a really huge number of nodes - in situ visualization possible }}} {{{#!td - user has to install ParaView on his workstation - ssh tunnel needed }}} |----------------------------------------------------------- ---- == [=#SampleParaViewSessionJURECA] Sample ParaView session on visualization node(s) == === Remote Rendering === In this section we show how to use ParaView's server side rendering capabilities on JURECA's '''visualization nodes''' in a sample session step by step. 1. Login to JURECA and load the modules for ParaView Once the account on JURECA is created, we may connect to one of the login nodes of JURECA with 'ssh user@jureca.fz-juelich.de'. After successful login we will see the following prompt: {{{ bash-4.2$ }}} Now, we have to load the modules providing the ParaView software {{{ bash-4.2$ module load Stages/Current intel-para ParaView }}} and set the DISPLAY environment variable as follows {{{ bash-4.2$ export DISPLAY=:0.0 }}} Next, we allocate some resources for our ParaView server, and run the ParaView server (in this example session on 2 nodes, using 48 tasks) {{{ bash-4.2$ salloc -N 2 -p vis --gres gpu:2 --start-xserver bash-4.2$ srun --cpu_bind=none --ntasks=48 --gres=gpu:0 vglrun pvserver --use-offscreen-rendering }}} which will produce the following output from the ParaView server: {{{ Waiting for client... Connection URL: cs://jrc1391:11111 Accepting connection(s): jrc1391:11111 }}} where {{{ jrc1391:11111 }}} is the hostname and portnumber on JURECA the server will listen to. 2. As a next step, we establish a tunnel connection to the above mentioned port: {{{ ssh -L 11111:jrc1391:11111 jureca }}} 3. [=#connectToServer] Now, we can open the GUI on our workstation and connect to the pvserver running on JURECA: [[Image(PVClientConnectButton.PNG)]]\\ In the dialog that will now pop up, press "'''Add Server'''" and setup the server as follows: [[Image(PVChooseServerConfig.PNG)]] [[Image(PVAddServer.PNG)]] [[Image(PVServerLaunchConfiguration.PNG)]] Note that this has to be done only once, since ParaView remembers the generated server configurations. Then, make sure your newly created server is selected and click the '''Connect''' button in the Choose Server Configuration dialog. [[Image(PVChooseServerJURECA.PNG)]] 4. Finally, we can open the '''Open File Dialog''' and select some data from JURECA's filesystem. [[Image(PVClient.PNG)]] ---- == [=#SampleParaViewSessionJURECAComputeNodes] Sample ParaView session on compute node(s) == === Remote Rendering === In this section we show how to use ParaView's server side rendering capabilities on JURECA's '''compute nodes''' in a sample session step by step. 1. Login to JURECA and load the modules for ParaView Once the account on JURECA is created, we may connect to one of the login nodes of JURECA with 'ssh user@jureca.fz-juelich.de'. After successful login we will see the following prompt: {{{ bash-4.2$ }}} Now, we have to load the modules providing the ParaView software {{{ bash-4.2$ module load Stages/Current intel-para ParaView/5.0.1-OSMesa }}} Next, we allocate some resources for our ParaView server, and run the ParaView server (in this example session on 1 node, using 24 tasks) {{{ bash-4.2$ salloc --partition=devel --nodes=1 --time=00:20:00 salloc: Pending job allocation 1711109 salloc: job 1711109 queued and waiting for resources salloc: job 1711109 has been allocated resources salloc: Granted job allocation 1711109 bash-4.2$ srun --nodes=1 --ntasks=24 pvserver }}} which will produce the following output from the ParaView server: {{{ Waiting for client... Connection URL: cs://jrc0036:11111 Accepting connection(s): jrc0036:11111 }}} where {{{ jrc0036:11111 }}} is the hostname and portnumber on JURECA the server will listen to. 2. As a next step, we establish a tunnel connection in a new terminal on our workstation to the above mentioned port: {{{ ssh -L 11111:jrc0036:11111 jureca }}} 3. Now, we can open the GUI on our workstation and connect to the pvserver running on JURECA as described [#connectToServer here]