Cactus Visualisation - Interdisciplinary · freely available visualization package written by M....
Transcript of Cactus Visualisation - Interdisciplinary · freely available visualization package written by M....
![Page 1: Cactus Visualisation - Interdisciplinary · freely available visualization package written by M. Choptuik light-weight visualization package based on Visualization Toolkit (VTK) OpenGL](https://reader033.fdocuments.in/reader033/viewer/2022050607/5fae2b66df63ee604a5249c2/html5/thumbnails/1.jpg)
Cactus Visualisation
![Page 2: Cactus Visualisation - Interdisciplinary · freely available visualization package written by M. Choptuik light-weight visualization package based on Visualization Toolkit (VTK) OpenGL](https://reader033.fdocuments.in/reader033/viewer/2022050607/5fae2b66df63ee604a5249c2/html5/thumbnails/2.jpg)
greentexture
Outline
I. Cactus Data I/O Infrastructure● Cactus I/O Methods and Thorns● How to obtain periodic output● Parallel I/O● The HDF5 file format● Hyperslabbing
II. Cactus Data Visualization● Simple 1D/2D visualization tools● Advanced 3D visualization packages
![Page 3: Cactus Visualisation - Interdisciplinary · freely available visualization package written by M. Choptuik light-weight visualization package based on Visualization Toolkit (VTK) OpenGL](https://reader033.fdocuments.in/reader033/viewer/2022050607/5fae2b66df63ee604a5249c2/html5/thumbnails/3.jpg)
greentexture
The Cactus I/O Subsystem
● I/O Thorns● Provide I/O methods which they register with the flesh at STARTUP● Include functions for the flesh to call for I/O● Decide themselves how, when, and where to output● If applicable they also provide checkpointing / recovery functionality
● Most users perform (periodic) output simply by setting appropriate I/O parameters in a parameter file for a run
● see wavetoy example parameter file
● (Unconditional) output can also be triggered directly from application thorns via the flesh I/O API (useful for non-periodic output or debugging)
![Page 4: Cactus Visualisation - Interdisciplinary · freely available visualization package written by M. Choptuik light-weight visualization package based on Visualization Toolkit (VTK) OpenGL](https://reader033.fdocuments.in/reader033/viewer/2022050607/5fae2b66df63ee604a5249c2/html5/thumbnails/4.jpg)
greentexture
Cactus I/O Infrastructure
IOUtil
Registration & Scheduling of I/O methods
Flesh
Set of basic I/O parametersRegistration & Scheduling of Recovery Methods
IOBasic
IOFlexIO IOHDF5
IOJpeg
IOASCII
![Page 5: Cactus Visualisation - Interdisciplinary · freely available visualization package written by M. Choptuik light-weight visualization package based on Visualization Toolkit (VTK) OpenGL](https://reader033.fdocuments.in/reader033/viewer/2022050607/5fae2b66df63ee604a5249c2/html5/thumbnails/5.jpg)
greentexture
I/O Methods in Cactus
I/O MethodInfo
Scalar
IOASCII_1D
IOASCII_2D
IOASCII_3D
IOHDF5
IOFlexIO
IOJpeg
IsoSurfacer
CarpetIOASCII
CarpetIOHDF5
DescriptionScreen output of scalars and
grid array reductions
Scalars and grid array reductions
1D line output of grid arrays
2D slice output of grid arrays
3D grid arrays
grid arrays and hyperslabs in HDF5 format
grid arrays and hyperslabs in FlexIO format
2D slice output as Jpeg images
Isosurface geometries for 3D grid arrays
Carpet ASCII output
Carpet HDF5 output
Providing ThornCactusBase/IOBasic
CactusBase/IOBasic
CactusBase/IOASCII
CactusBase/IOASCII
CactusBase/IOASCII
CactusPUGHIO/IOHDF5
CactusPUGHIO/IOFlexIO
CactusIO/IOJpeg
CactusPUGHIO/IsoSurfacer
Carpet/CarpetIOASCII
Carpet/IOHDF5
![Page 6: Cactus Visualisation - Interdisciplinary · freely available visualization package written by M. Choptuik light-weight visualization package based on Visualization Toolkit (VTK) OpenGL](https://reader033.fdocuments.in/reader033/viewer/2022050607/5fae2b66df63ee604a5249c2/html5/thumbnails/6.jpg)
greentexture
HPC Issues for I/O
● human-readable ASCII data is nice but● it eats a lot of disk space● it involves conversions into/from strings which potentially
loose floating-point precision information a compact data representation is necessary
● datafiles should be interchangeable in a heterogenous computing environment
● data format should be standardized and supported by existing postprocessing and visualization tools
● large-scale parallel applications may generate data in the terabytes range which cannot be efficiently managed by traditional serial I/O schemes (I/O bottleneck) design your applications with parallel I/O in mind !
![Page 7: Cactus Visualisation - Interdisciplinary · freely available visualization package written by M. Choptuik light-weight visualization package based on Visualization Toolkit (VTK) OpenGL](https://reader033.fdocuments.in/reader033/viewer/2022050607/5fae2b66df63ee604a5249c2/html5/thumbnails/7.jpg)
greentexture
HDF5Hierachical Data Format - Version 5: http://hdf.ncsa.uiuc.edu/hdf5
● provides a general Scientific Data Format specification and a supporting I/O library implementation
● simple but powerful data model: datasets + groups● self-describing data format: implicit / user metadata● predefined standard + user-defined datatypes● transparent datatype conversion during I/O● efficient partial reads/writes of datasets (hyperslab selections)● modular, extensible library design: Virtual File Driver layer
to plug in different low-level drivers
● Support and active development by NCSA's HDF5 group● More widely accepted by the HPC community as a standard
![Page 8: Cactus Visualisation - Interdisciplinary · freely available visualization package written by M. Choptuik light-weight visualization package based on Visualization Toolkit (VTK) OpenGL](https://reader033.fdocuments.in/reader033/viewer/2022050607/5fae2b66df63ee604a5249c2/html5/thumbnails/8.jpg)
greentexture
Hyperslabbing● hyperslab selection
● identify only portionsof a 3D dataset for output
● hyperslab parameters● dimensionality● origin● extent● downsampling● (output precision)
Hyperslab write
![Page 9: Cactus Visualisation - Interdisciplinary · freely available visualization package written by M. Choptuik light-weight visualization package based on Visualization Toolkit (VTK) OpenGL](https://reader033.fdocuments.in/reader033/viewer/2022050607/5fae2b66df63ee604a5249c2/html5/thumbnails/9.jpg)
greentexture
Cactus and HDF5● Cactus uses HDF5 as the standard data format for
(full) output of nD grid variables and hyperslabs thereof● through its Virtual File Driver layer, the HDF5 functionality
was enhanced for remote visualization and steering● online data streaming using the Stream Driver● efficient remote data access using the GridFtp Driver
● HDF5 utilities/readers are available for● Amira● DataVault● OpenDX
![Page 10: Cactus Visualisation - Interdisciplinary · freely available visualization package written by M. Choptuik light-weight visualization package based on Visualization Toolkit (VTK) OpenGL](https://reader033.fdocuments.in/reader033/viewer/2022050607/5fae2b66df63ee604a5249c2/html5/thumbnails/10.jpg)
greentexture
Serial vs. Parallel I/O
P3 P2
P1 P0
One proc gathers datafrom all other processors ...
Serial I/O
... and writes it intoa single unchunked file
Serial I/O via dedicated I/O processor
I/O processor becomes bottleneck
![Page 11: Cactus Visualisation - Interdisciplinary · freely available visualization package written by M. Choptuik light-weight visualization package based on Visualization Toolkit (VTK) OpenGL](https://reader033.fdocuments.in/reader033/viewer/2022050607/5fae2b66df63ee604a5249c2/html5/thumbnails/11.jpg)
greentexture
Serial vs. Parallel I/O
P3 P2
P1 P0
All processors write concurrently ...
Parallel I/O
... into multiple chunked files (possibly distributed)
Single unchunked file
Recombination
Parallel chunked I/O
● system limit for number of open file● chunked files might need recombination
![Page 12: Cactus Visualisation - Interdisciplinary · freely available visualization package written by M. Choptuik light-weight visualization package based on Visualization Toolkit (VTK) OpenGL](https://reader033.fdocuments.in/reader033/viewer/2022050607/5fae2b66df63ee604a5249c2/html5/thumbnails/12.jpg)
greentexture
Cactus Visualization Tools
http://www.cactuscode.org/VizTools
OpenDX
IsoView
gnuplotxgraph
AmiraDataVault
xvs
![Page 13: Cactus Visualisation - Interdisciplinary · freely available visualization package written by M. Choptuik light-weight visualization package based on Visualization Toolkit (VTK) OpenGL](https://reader033.fdocuments.in/reader033/viewer/2022050607/5fae2b66df63ee604a5249c2/html5/thumbnails/13.jpg)
greentexture
Simple Visualization: [xy]graph
● freely available, lightweight visualization tool
● generates 1D lineplots from ASCII output data
● mouse-controlled zooming● animations of time-dependent data● x-derivatives, re-scaling, time
integration of input data
● more info available on the ygraph homepage: http://www.aei.mpg.de/~pollney/ygraph/
![Page 14: Cactus Visualisation - Interdisciplinary · freely available visualization package written by M. Choptuik light-weight visualization package based on Visualization Toolkit (VTK) OpenGL](https://reader033.fdocuments.in/reader033/viewer/2022050607/5fae2b66df63ee604a5249c2/html5/thumbnails/14.jpg)
greentexture
Simple Visualization: xvs
● freely available visualization package written by M. Choptuik
● based on Visualization Toolkit (VTK)● OpenGL functionality provides fast
and intuitive, mouse-based rotation and zooming of rendered images
● SDF datasets are streamed from a client to a server
● more info available on the xvs homepage: http://laplace.physics.ubc.ca/~matt/410/Doc/xvs/
● HDF5toSDF utility client available from http://www.cactuscode.org/VizTools/DataVaultXVSutils.html
![Page 15: Cactus Visualisation - Interdisciplinary · freely available visualization package written by M. Choptuik light-weight visualization package based on Visualization Toolkit (VTK) OpenGL](https://reader033.fdocuments.in/reader033/viewer/2022050607/5fae2b66df63ee604a5249c2/html5/thumbnails/15.jpg)
greentexture
Simple Visualization: gnuplot
● open source software● command-driven interactive
function plotting program● 2D and 3D surface plots● various terminal drivers
for different output devicesand formats
● variety of data manipulationand postprocessing features
● more info available on the xvs homepage: http://www.gnuplot.info/
![Page 16: Cactus Visualisation - Interdisciplinary · freely available visualization package written by M. Choptuik light-weight visualization package based on Visualization Toolkit (VTK) OpenGL](https://reader033.fdocuments.in/reader033/viewer/2022050607/5fae2b66df63ee604a5249c2/html5/thumbnails/16.jpg)
greentexture
DataVault (DV)
● freely available visualization package written by M. Choptuik
● light-weight visualization packagebased on Visualization Toolkit (VTK)
● OpenGL functionality provides fast and intuitive, mouse-based rotation and zooming of rendered images
● hdf5todv client streams datasets in SDF format to a DV server
● more info available on the DV homepage: http://laplace.physics.ubc.ca/Doc/DV/
![Page 17: Cactus Visualisation - Interdisciplinary · freely available visualization package written by M. Choptuik light-weight visualization package based on Visualization Toolkit (VTK) OpenGL](https://reader033.fdocuments.in/reader033/viewer/2022050607/5fae2b66df63ee604a5249c2/html5/thumbnails/17.jpg)
greentexture
Amira
● Commercial Visualization package developed at ZIB
● Advanced high-end 3D visualization andvolume modeling methods
● OpenGL hardware graphicssupport
● available for Windows, IRIX, HP-UX, SunOS, Linux
● more info on Amira home page http://amira.zib.dedemo version can be downloaded from http://amira.zib.de/download.html
![Page 18: Cactus Visualisation - Interdisciplinary · freely available visualization package written by M. Choptuik light-weight visualization package based on Visualization Toolkit (VTK) OpenGL](https://reader033.fdocuments.in/reader033/viewer/2022050607/5fae2b66df63ee604a5249c2/html5/thumbnails/18.jpg)
greentexture
OpenDX
● powerful open-source software package for the visualization of arbitrary scientific datasets
● flexible data model● data-driven program flow● variety of already built-in
functional modules ● OpenDXutils package provides
reader modules to import HDF5 (Cactus and Carpet) data
● OpenDX home page: http://www.opendx.org/● OpenDXUtils: http://www.cactuscode.org/VizTools/OpenDX.html