Intel OSPRay Studio
Overview
Intel® OSPRay Studio is a showcase application and creates an implementation of an interactive and extendable ray-tracing application.
Part of the oneAPI Rendering Toolkit, it leverages on lower level libraries such as Embree, OSPRay and OpenVKL to provide very highly optimized raytracing workflows, making the most of Intel CPUs (and soon, GPUs and accelerators). Successfully used by graphics and animation industries, it is also cutting-edge technology in the field of HPC and scientific visualizations, thus valuable in this context for LRZ.
Our instance on SuperMUC-NG and the Linux Cluster builds a development branch in order to provide the latest features (animations, advanced camera settings, ...) and a few selected plugins for importing common outputs of scientific simulations valuable to LRZ users (HemeLB, FLASH, ...).
Being a dev version, bugs and instabilities are possible. Should you find any, please report them at our Servicedesk.
Usage
Here we present some minimal instructions and usage examples. For more general guides, we refer to Intel official documentations and tutorials.
OSPRay and OSPRay Studio on LRZ supercomputers should first be loaded; the usual module structure applies, e.g.
module avail ospray [...] module load ospray [...] module help ospray
Then the ospStudio
application is ready to use with no need for other settings.
Studio is available in two modes. The first is batch mode, for use on compute nodes via regular job submission (also interactive via salloc).
ospStudio batch -r pathtracer -vp 0 0 0 -vi 1 1 1 -sm 4 -c panoramic -s 1920 1080 <my_example_data.glb>
Note the batch
command line option. Here we have selected the pathtracer
renderer (scivis
and ao
being other valid entries), set camera position (vp
) and look-up (vi
), and used a panoramic
camera for making a 1080p rendering of some .glb
data.
ospStudio batch --help # LRZ warning: put no [] in the actual commands!
For a rather complete CLI manual, type:
The second mode is with its interactive GUI for better data exploration (on login nodes).
When using the GUI on a login node, please be considerate of other users and do so sparingly, following the advice below.
Best practice when using the login node for scientific visualization with Studio include:
- never leave unnecessary renderings open and running (and never use more than one at a time)
- limit to short sessions (to your discretion, and resource availability)
- you may have to terminate your session if so asked by LRZ admin
- using the Remote Visualization Service in VNC mode is optional, but will largely improve responsivity
- use the
--osp:num-threads=24
option (see example below) to leave some compute resources for other node users
ospStudio --osp:num-threads=24 <my_data_file1.glb> <my_data_file2.glb> ...
You may also use the GUI itself to browse your HOME
or WORK
filesystem and import your data. Should the data contain animations (e.g. gltf
files with this feature) choose the File → Import and animate ...
menu entry.
Specific Import plugin provided
LRZ provides a few plugin for importing relevant data (e.g. HPC simulation outputs), compiled from source. Should you have a plugin for your data, you may send a request to our Servicedesk to have it added to the software stack.
CompBioMed HemeLB data
A plugin using Intel OpenVKL to map sparse volume data directly to memory space. Used to load the native, binary .dat
output of HemeLB blood flow simulations, no pre-processing required.
ospStudio --plugin hemelb --osp:num-threads=24 <my_artery.dat> <my_vein.dat>
In order to load and animate selected datafields and time snapshots from the several contained in a .dat file, from CLI you can use the synthax file:dset:from-to:step.dat.
Example:
ospStudio --plugin hemelb --osp:num-threads=24 ArteryWhole:0:1-5:1.dat VeinWhole:0:1-5:1.dat
will load the 0-th dataset (velocity; 1 will do the pressure) for the first five snapshots.