ParaView¶
ParaView is an open-source multiple-platform application for interactive, scientific visualization. It has a client–server architecture to facilitate remote visualization of datasets, and generates level of detail models to maintain interactive frame rates for large datasets.
ParaView module¶
ParaView module has to be loaded using Lmod prior to running it.
$ module load ParaView
Once the module has been loaded you will need to set some enviroment variables:
You can also list all available versions using Lmod's spider command:
$ module spider ParaView
--------------------------------------------
ParaView:
--------------------------------------------
Description:
ParaView is a scientific parallel visualizer.
Versions:
ParaView/5.6.2-foss-2019b-Python-3.7.4-mpi
ParaView/5.6.2-intel-2019b-Python-3.7.4-mpi
--------------------------------------------
For detailed information about a specific "ParaView"
package (including how to load the modules) use the module's full name.
Note that names that have a trailing (E) are extensions
provided by other modules.
For example:
$ module spider ParaView/5.6.2-intel-2019b-Python-3.7.4-mpi
--------------------------------------------
Software version¶
Here you can check the available versions for ParaView in the different clusters
ParaView/5.6.2-foss-2019b-Python-3.7.4-mpi
ParaView/5.6.2-foss-2019b-Python-3.7.4-mpi
ParaView/5.6.2-intel-2019b-Python-3.7.4-mpi
ParaView/5.8.1-foss-2020b-mpi
ParaView/5.11.0-foss-2022b-mpi
How to run ParaView on Atlas EDR¶
Running ParaView as an interactive job¶
First, we need to start a pvserver
:
(atlas-edr-login-0X) $ srun -N 1 --ntasks=4 --partition=regular --pty bash
(atlas-XXX) $ module load ParaView/5.6.2-intel-2019b-Python-3.7.4-mpi
(atlas-XXX) $ pvserver --multi-clients --force-offscreen-rendering
Waiting for client...
Connection URL: cs://atlas-XXX:11111
Accepting connection(s): atlas-XXX:11111
Warning
Remember that our local version MUST match the version installed on the cluster. We recommend that you use the binaries provided by Kitware on your local system matching the versions that can be found on the cluster.
We need to make 11111 port on atlas-XXX node reachable by our local machine. For that purpose we will create a SSH tunnel mapping said port to our 11111 local port through one of the login nodes. From our local machine we do the following:
$ ssh -L 11111:atlas-XXX:11111 username@atlas-edr.sw.ehu.es
Now we can open a connection to localhost on port 11111 in order to connect to the ParaView server that is running on the compute node.
Running ParaView using a batch script¶
We can submit a batch script similar to this one:
Batch script to submit ParaView jobs on Atlas EDR
#!/bin/bash
#SBATCH --qos=regular
#SBATCH --job-name=ParaView_job
#SBATCH --cpus-per-task=1
#SBATCH --mem=10gb
#SBATCH --nodes=1
#SBATCH --ntasks-per-node=4
#SBATCH --output=%x-j.out
#SBATCH --error=%x-j.err
module load ParaView/5.6.2-intel-2019b-Python-3.7.4-mpi
srun pvserver --multi-clients --force-offscreen-rendering
We can learn in which node the job is running by either checking the queue with squeue
command or by taking a look into the output file. The contents of the output file will look like this:
Waiting for client...
Connection URL: cs://atlas-XXX:11111
Accepting connection(s): atlas-XXX:11111
Connecting from outside our network, VPN or University's network¶
If you are connecting from outside our networks, the University's VPN or the University's network, then an additional step is required. After starting the ParaView server is started you will need to create two SSH tunnels instead of one:
-
Create a SSH tunnel to connect to atlas-edr.sw.ehu.es through one of the access computers:
$ ssh -L 2222:atlas-edr-login-02.sw.ehu.es:22 username@ac-02.sw.ehu.es
-
Create a tunnel to connect to the compute node through the previously created tunnel:
$ ssh -p 2222 11111:atlas-XXX:11111 localhost
Now we can open a connection to localhost on port 11111 in our ParaView client.