ParaView
ParaView is a parallel, scalable, visualization package from Kitware. Effectively, it is a GUI interface to Kitware's Visualization ToolKit (VTK). Thus most ParaView operations have a VTK equivalent. See https://paraview.org/ for more information.
Contents
Running
To launch a single threaded ParaView instance, first connect via VNC, then use vglconnect to connect to one of the compute machines:
vglconnect -s viz003
Add the desired version of ParaView to your environment (the below example will get the "default" version)
soft add @paraview
and launch the GUI:
vglrun paraview
Viewing Serial Cases
Within the GUI, open the .pht file that corresponds to your case. The .pht file will appear in the "pipeline browser" within ParaView. To actually see your model, click the "apply" button on the properties tab. To visualize a particular flow property, choose that property from the dropdown menu in the "active variable controls" toolbar, and then click the button corresponding to the type of visualization you want (contour, slice, etc.) in the "common" toolbar. The properties of the visualization element can then be controlled in the "properties" tab.
For more help with the ParaView GUI, see ParaView's tutorial.
Parallel (Client/Server) Mode
One viz node
To visualize cases in parallel on one viz node, start the ParaView server in parallel with
mpirun -np N pvserver
-
N
is the number of processes, maximum of 8 on one viz node.
Multiple viz nodes
To visualize using more than one viz node, start a ParaView server utilizing multiple viz nodes with
mpirun --prefix A -x DISPLAY=":0" -x PATH -x LD_LIBRARY_PATH -hostfile ~matthb2/hostfile-ib -np 16 pvserver
-
--prefix A
mpirun is located atA/bin/mpirun
; thewhich mpirun
command will tell you this. Make sure to add one of the@paraview-verison-number
macros fromsoftenv
first, as it will set the bestmpirun
path for that version.A
is the 'prefix' directory. In traditional unix, the prefix directory contains bin, etc, include, lob, share directories associated with the program.
The -x
flag means 'copy a variable' from the machine you run mpirun
from (the headnode) to those it's starting processes on (the slaves).
-
-x DISPLAY=":0"
Location of the X-server. Assumes localhost. Could doviz002:0
to use graphics card on viz002 instead. 0 is the default graphics hardware, whereas 1, 2, etc could be VNC servers or other software display.
-
-x PATH
The lookup path for the binary.PATH
is an environment variable maintained by the shell.
-
-x LD_LIBRARY_PATH
The lookup path for shared libraries. Same asPATH
, but for dynamically-linked libraries.
-
-hostfile ~matthb2/hostfile-ib
File specifying list of hosts. Contents are lines that look like172.18.4.11 slots=8
. This is mpi-implementation specific. IP address of viz001, for instance, and the number of cores it has (slots=8).
-
-np 16
Total number of processes that mpirun should start. Maximum is 16 when using two viz nodes (8 per node).
ALCF
Instead of building ParaView on ALCF it is much easier to view ALCF files in ParaView on the viz nodes via a client/server connection. First, connect to ALCF and start an interactive session (see ALCF). Then, run this script on ALCF in the folder that contains the .pht file you wish to open:
/projects/cfdml_aesp/Viz/cooley/Viz-SyncIO/pvserverLaunch5.4.1.sh
It should then say "Accepting connection(s)". Now, go to a terminal on a viz node and open Paraview 5.4.1. You can load this version by running:
soft add @paraview-5.4.1 vglrun paraview
Now, click the "Connect" button (third from the left, under "View"). Click "Add Server". Under "Name", enter the first string of digits after "Accepting connection(s):" (cc001, for example). Under "Host", enter:
ccXXX.cooley.pub.alcf.anl.gov
where XXX is the server number. And finally, enter Port number 8000, click configure, and connect. You can now browse and open .pht files on ALCF Cooley!