Version 4 (modified by 4 years ago) ( diff ) | ,
---|
ParaView
"ParaView is an open-source, multi-platform application designed to visualize data sets of varying sizes from small to very large. The goals of the ParaView project include developing an open-source, multi-platform visualization application that supports distributed computational models to process large data sets. It has an open, flexible, and intuitive user interface. Furthermore, ParaView is built on an extensible architecture based on open standards.
ParaView runs on distributed and shared memory parallel as well as single processor systems and has been successfully tested on Windows, Linux, Mac OS X, IBM Blue Gene, Cray XT3 and various Unix workstations and clusters. Under the hood, ParaView uses the Visualization Toolkit as the data processing and rendering engine and has a user interface written using the Qt cross-platform application framework." link
- ParaView Homepage (http://www.paraview.org)
- ParaView Manuals (http://www.paraview.org/documentation)
- ParaView Prebuild Executables (http://www.paraview.org/download)
- ParaView Wiki (http://www.paraview.org/Wiki/ParaView)
- recommended webpages on more about ParaView
Run ParaView on a JUWELS vis node
We recommend to run ParaView on a JUWELS Vis-node in a VNC session. Therefore you should establish a VNC connection to JUWELS as described here. In case you started the VNC session with the "-profile vis" option, you will find an icon on your desktop named "ParaView (5.x)". Just click on this ican to start ParaView.
In case you would like a specific version of ParaView, you can start ParaView from a terminal window by hand. As ParaView is only available in the development stage, you must activate this stage first:
module --force purge module use $OTHERSTAGES module load Stages/Devel-2019a
Then you have to find out what versions of ParaView are available on JUWELS by
module spider paraview
The output shows you all available versions. To find out, which modules to load for a specific version, you have to call "module spider" again with the version name as parameter, e.g.:
module spider ParaView/5.8.0-opengl-Python-3.6.8
The output shows you what modules to load, e.g.:
You will need to load all module(s) on any one of the lines below before the "ParaView/5.8.0-opengl-Python-3.6.8" module is available to load. Stages/Devel-2019a GCC/8.3.0 ParaStationMPI/5.2.2-1
So just load the necessary modules by:
module load Stages/Devel-2019a GCC/8.3.0 ParaStationMPI/5.2.2-1 ParaView/5.8.0-opengl-Python-3.6.8
Once all modules are loaded, you can start ParaView on the VNC desktop.
Don't forget the "vglrun" command!
vglrun paraview
Run ParaView in parallel on JUWELS batch partition
Before you can start a parallel ParaView job on JUWELS, first establish a VNC connection to a vis login node and open the ParaView-GUI on this VNC desktop, as describes above. Then you can start a parallel ParaView job and connect the ParaView to this job.
Please note, that you have to start the EGL Version of the ParaView server (pvserver) on the JUWELS batch partition! To start a parallel job, first create a Slurm job file with proper parameters. In this example we name this file "start_pvserver.slurm".
#!/bin/bash #SBATCH --job-name=pvserver #SBATCH --nodes=1 #SBATCH --time=01:00:00 echo "sbatch: START SLURM_JOB_ID $SLURM_JOB_ID (SLURM_TASK_PID $SLURM_TASK_PID) on $SLURMD_NODENAME" module purge module use $OTHERSTAGES module load Stages/Devel-2019a module load GCC/8.3.0 module load ParaStationMPI/5.2.2-1 module load ParaView/5.8.0-EGL-opengl-Python-3.6.8 export OMP_NUM_THREADS=12 export KNOB_MAX_WORKER_THREADS=12 srun --ntasks=8 \ --cpus-per-task=12 \ --cpu_bind=verbose,rank \ pvserver echo "Bye"
Start this job script by sbatch:
sbatch --account=<your_budget_name> --partition=batch ./start_pvserver.slurm
Now you have to wait for your job to start. You can check the state of the job (pending, running, ...) whit the squeue command:
squeue -u <your_username>
Onces startet, you will find a slurm output file which gives you the information on what node (rank 0) the job is running, e.g.:
sbatch: START SLURM_JOB_ID 2405571 (SLURM_TASK_PID 28448) on jwc00n064
Now you have to connect your ParaView GUI to this node. Please note the a successful connection is only possible when your ParaView GUI (paraview) and your ParaView server (pvserver) have the SAME version (5.8 in this example). In the ParaView GUI, select the File->Connect menue. If the rank 0 node is not already in the list of existing configurations, press the "Add Servers" button to add this connection. In the "Host" line, fill in the name of the node, in this example "jwc00n064" for ethernet or "jwc00n064.ib" for infiniband. Click on "Configure", select "Manual" as start type and save the connection. Then you will finde the rank 0 node in the list of configurations. Just select this entry and press "Connect".
You can check if the connection was successful by various ways:
- In the Pipeline Browser of the ParaView GUI, you can see the name of the rank 0 node on top
- In the ParaView GUI you can open the "Memory Inspector" (menue View->Memory Inspector). The memory inspector shows you the actual client/server configuration.
- Look for "Client connected" message in the slurm output file
Waiting for client... Connection URL: cs://jwc00n064.adm00.juwels.fzj.de:11111 Accepting connection(s): jwc00n064.adm00.juwels.fzj.de:11111 Client connected.