exascale pre and post processing · powerpoint-präsentation author: matura, gregor created date:...
TRANSCRIPT
![Page 1: Exascale Pre and Post Processing · PowerPoint-Präsentation Author: Matura, Gregor Created Date: 12/18/2013 6:30:30 PM](https://reader036.vdocuments.us/reader036/viewer/2022071103/5fdd36622fb0a74f1737fb85/html5/thumbnails/1.jpg)
Collaborative Research into Exascale Systemware, Tools and Applications
Exascale Pre and Post Processing
Achim Basermann, Gregor Matura, Fang Chen, Markus Flatken, Andreas Gerndt (DLR)
James Hetherington, Timm Krüger, Jiri Jaros, Rupert Nash (UCL)
Martin Aumüller (USTUTT)
1
![Page 2: Exascale Pre and Post Processing · PowerPoint-Präsentation Author: Matura, Gregor Created Date: 12/18/2013 6:30:30 PM](https://reader036.vdocuments.us/reader036/viewer/2022071103/5fdd36622fb0a74f1737fb85/html5/thumbnails/2.jpg)
2
CRESTA Work Package 5: User Tools
• Objectives: development of pre and post processing as well as remote hybrid rendering tools to support exascale applications and users including: • Mesh manipulation and partitioning tools • Visualisation tools • Data management tools
![Page 3: Exascale Pre and Post Processing · PowerPoint-Präsentation Author: Matura, Gregor Created Date: 12/18/2013 6:30:30 PM](https://reader036.vdocuments.us/reader036/viewer/2022071103/5fdd36622fb0a74f1737fb85/html5/thumbnails/3.jpg)
Survey
• Post Processing
• Remote Hybrid Rendering
• Pre processing interface PPSTee
3
![Page 4: Exascale Pre and Post Processing · PowerPoint-Präsentation Author: Matura, Gregor Created Date: 12/18/2013 6:30:30 PM](https://reader036.vdocuments.us/reader036/viewer/2022071103/5fdd36622fb0a74f1737fb85/html5/thumbnails/4.jpg)
Challenges in Exascale Post Processing
• Huge amount of data to be processed and visualised • Not possible to store data on disk • Moving data is costly • Memory issue • Efficiency of parallelisation with respect to visualisation techniques • Latency
4
![Page 5: Exascale Pre and Post Processing · PowerPoint-Präsentation Author: Matura, Gregor Created Date: 12/18/2013 6:30:30 PM](https://reader036.vdocuments.us/reader036/viewer/2022071103/5fdd36622fb0a74f1737fb85/html5/thumbnails/5.jpg)
Post Processing
• Blood flow simulation for aneurysm study
• Flow visualisation • Volumes • Lines • Particles
• and line visuasualisation of a flow field for the aneurysm dataset
5
![Page 6: Exascale Pre and Post Processing · PowerPoint-Präsentation Author: Matura, Gregor Created Date: 12/18/2013 6:30:30 PM](https://reader036.vdocuments.us/reader036/viewer/2022071103/5fdd36622fb0a74f1737fb85/html5/thumbnails/6.jpg)
Approaches
• In-situ visualisation • Visualise on-going simulation result, without pausing simulation • Visualise coarse data
• Interactive visualisation • Interactive frame rates (no latency to human eyes) • Finding suitable visualisation techniques • Finding suitable parallelisation for chosen visualisation techniques • Exploring rendering with GPU
• Multi-resolution data visualisation • Define level of details. • Provide visualisation on different levels of details. • Enable first result on a much coarser mesh.
6
![Page 7: Exascale Pre and Post Processing · PowerPoint-Präsentation Author: Matura, Gregor Created Date: 12/18/2013 6:30:30 PM](https://reader036.vdocuments.us/reader036/viewer/2022071103/5fdd36622fb0a74f1737fb85/html5/thumbnails/7.jpg)
In-Situ Visualisation
• Test result with HemeLB
• Visualisation is done on the same node where simulation is performed.
7
Fig: An example of cut plane in-situ visualisation of a testing simulation. This visualisation is provided at run time, i.e., while simulation is running.
![Page 8: Exascale Pre and Post Processing · PowerPoint-Präsentation Author: Matura, Gregor Created Date: 12/18/2013 6:30:30 PM](https://reader036.vdocuments.us/reader036/viewer/2022071103/5fdd36622fb0a74f1737fb85/html5/thumbnails/8.jpg)
Using Virtual Reality • Power-wall, display-walI systems
• Immersive visualisation
• Provide great details
• Enhanced depth perception in VR
• Enable user to explore their data in a natural way
8
![Page 9: Exascale Pre and Post Processing · PowerPoint-Präsentation Author: Matura, Gregor Created Date: 12/18/2013 6:30:30 PM](https://reader036.vdocuments.us/reader036/viewer/2022071103/5fdd36622fb0a74f1737fb85/html5/thumbnails/9.jpg)
Computational Steering
• Steer mesh or simulation parameters
• Based on provided in-situ visualisation
• Carry out steering during simulation is running
• Prevent failure
• Achieve better convergence for the solver
• Saving time
9
![Page 10: Exascale Pre and Post Processing · PowerPoint-Präsentation Author: Matura, Gregor Created Date: 12/18/2013 6:30:30 PM](https://reader036.vdocuments.us/reader036/viewer/2022071103/5fdd36622fb0a74f1737fb85/html5/thumbnails/10.jpg)
Remote Hybrid Rendering • Goal: Access simulations on exascale resources from desktops and
immersive virtual environments.
10
Remote Desktops (Zuffenhausen, RWTH Aachen)
Remote Virtual Reality (Stuttgart, Sindelfingen)
Remote Tiled Displays / Powerwalls (HLRS, IHS)
![Page 11: Exascale Pre and Post Processing · PowerPoint-Präsentation Author: Matura, Gregor Created Date: 12/18/2013 6:30:30 PM](https://reader036.vdocuments.us/reader036/viewer/2022071103/5fdd36622fb0a74f1737fb85/html5/thumbnails/11.jpg)
Remote Hybrid Rendering: Advantage
• Simulation data is rendered on or near the exascale system using scalable methods
• Static context information is overlayed locally
• Better interactivity because of some decoupling of interaction from remote rendering
11
Local Display Remote + =
![Page 12: Exascale Pre and Post Processing · PowerPoint-Präsentation Author: Matura, Gregor Created Date: 12/18/2013 6:30:30 PM](https://reader036.vdocuments.us/reader036/viewer/2022071103/5fdd36622fb0a74f1737fb85/html5/thumbnails/12.jpg)
PPSTEE A Pre-Processing Interface for Steering Exascale
Simulations by Intermediate Result Analysis
through In-Situ Post-Processing
12
![Page 13: Exascale Pre and Post Processing · PowerPoint-Präsentation Author: Matura, Gregor Created Date: 12/18/2013 6:30:30 PM](https://reader036.vdocuments.us/reader036/viewer/2022071103/5fdd36622fb0a74f1737fb85/html5/thumbnails/13.jpg)
Motivation
pre • Initialisation • Data manipulation
main • Simulation core
post • Result analysis • Visualisation • Rendering
13
Partitioner: Load balance
?
?
![Page 14: Exascale Pre and Post Processing · PowerPoint-Präsentation Author: Matura, Gregor Created Date: 12/18/2013 6:30:30 PM](https://reader036.vdocuments.us/reader036/viewer/2022071103/5fdd36622fb0a74f1737fb85/html5/thumbnails/14.jpg)
PPStee data flow: overview
14
![Page 15: Exascale Pre and Post Processing · PowerPoint-Präsentation Author: Matura, Gregor Created Date: 12/18/2013 6:30:30 PM](https://reader036.vdocuments.us/reader036/viewer/2022071103/5fdd36622fb0a74f1737fb85/html5/thumbnails/15.jpg)
Assumptions
• The simulation uses a partitioner There is some sort of mesh The mesh is there (= in memory): an initial (=bad) read-in happens
• The simulation has more than one stage • E.g.: an in-situ data analysis or visualisation is integrated
15
![Page 16: Exascale Pre and Post Processing · PowerPoint-Präsentation Author: Matura, Gregor Created Date: 12/18/2013 6:30:30 PM](https://reader036.vdocuments.us/reader036/viewer/2022071103/5fdd36622fb0a74f1737fb85/html5/thumbnails/16.jpg)
Properties
16
• Swappable external partitioning tool
• Flexible data format
• Incorporates different simulation stages like computation and visualisation
• Easily adjustable to • new partitioning tools • different kinds of stages • fault tolerance • (more/any) mesh refinement
![Page 17: Exascale Pre and Post Processing · PowerPoint-Präsentation Author: Matura, Gregor Created Date: 12/18/2013 6:30:30 PM](https://reader036.vdocuments.us/reader036/viewer/2022071103/5fdd36622fb0a74f1737fb85/html5/thumbnails/17.jpg)
Advantages
• Offers standardised partitioner access
• Relies on established external partitioning tools (however own ones can be integrated as well)
• Little overhead: if partitioning is already implemented required interface input is present in some (similar) form
• Small memory requirements
17
![Page 18: Exascale Pre and Post Processing · PowerPoint-Präsentation Author: Matura, Gregor Created Date: 12/18/2013 6:30:30 PM](https://reader036.vdocuments.us/reader036/viewer/2022071103/5fdd36622fb0a74f1737fb85/html5/thumbnails/18.jpg)
Disadvantages
• Individual routines of external partitioning tools covering special functionalities have to be implemented separately (yet this is possible)
• Another software layer
18
![Page 19: Exascale Pre and Post Processing · PowerPoint-Präsentation Author: Matura, Gregor Created Date: 12/18/2013 6:30:30 PM](https://reader036.vdocuments.us/reader036/viewer/2022071103/5fdd36622fb0a74f1737fb85/html5/thumbnails/19.jpg)
Preliminary results
19
HemeLB test runs on HemeLB test data sets (R15-L45 and R15-L450) PPStee using ParMETIS vs. PPStee using PTScotch vs. plain HemeLB code (ParMETIS)
0
20
40
60
80
100
120
140
160
4 6 8 12 16
runt
ime
# cores
R15-L45 ParMETIS
plain HemeLB
PTScotch
0
200
400
600
800
1000
1200
1400
1600
1800
4 6 8 12 16
runt
ime
# cores
R15-L450 ParMETIS
plain HemeLB
PTScotch
![Page 20: Exascale Pre and Post Processing · PowerPoint-Präsentation Author: Matura, Gregor Created Date: 12/18/2013 6:30:30 PM](https://reader036.vdocuments.us/reader036/viewer/2022071103/5fdd36622fb0a74f1737fb85/html5/thumbnails/20.jpg)
Conclusions
• Pre-processing data structures and algorithms suitable for exascale systems identified
• Prototype pre-processing interface for exascale systems defined and tested with HemeLB
• Concepts for data structures and algorithms suitable for exascale interactive post-processing including remote hybrid rendering developed
• Tests of prototype post-processing tools with HemeLB and OpenFOAM data sets successful
20
![Page 21: Exascale Pre and Post Processing · PowerPoint-Präsentation Author: Matura, Gregor Created Date: 12/18/2013 6:30:30 PM](https://reader036.vdocuments.us/reader036/viewer/2022071103/5fdd36622fb0a74f1737fb85/html5/thumbnails/21.jpg)
Future work
• Integration of PPStee into HemeLB production version
• Performance measurements with HemeLB (also using Zoltan)
• Further tests with other applications (OpenFOAM)
• Revision of architecture
• Comparison with other frameworks (some of them cover features of PPStee, e.g. ITAPS)
• Further development of the exascale post processing and remote hybrid rendering techniques
• Further co-design with CRESTA applications
21
![Page 22: Exascale Pre and Post Processing · PowerPoint-Präsentation Author: Matura, Gregor Created Date: 12/18/2013 6:30:30 PM](https://reader036.vdocuments.us/reader036/viewer/2022071103/5fdd36622fb0a74f1737fb85/html5/thumbnails/22.jpg)
Thank you for your attention!
22
![Page 23: Exascale Pre and Post Processing · PowerPoint-Präsentation Author: Matura, Gregor Created Date: 12/18/2013 6:30:30 PM](https://reader036.vdocuments.us/reader036/viewer/2022071103/5fdd36622fb0a74f1737fb85/html5/thumbnails/23.jpg)
Basic usage: example
Old call to ParMETIS:
ParMETIS_V3_PartKway(
vtxdist, xadj, adjncy,
vwgt, adjwgt,
wgtflag, numflag, ncon, nparts,
tpwgts, ubvec, options, edgecut,
part,
comm);
23
![Page 24: Exascale Pre and Post Processing · PowerPoint-Präsentation Author: Matura, Gregor Created Date: 12/18/2013 6:30:30 PM](https://reader036.vdocuments.us/reader036/viewer/2022071103/5fdd36622fb0a74f1737fb85/html5/thumbnails/24.jpg)
Basic usage: example
Call to PPStee:
// get interface
PPStee ppstee;
// submit graph
ppstee.submitGraph(pgraph);
// submit weights
ppstee.submitNewStage(wgtCmp, PPSTEE_STAGE_COMPUTATION);
ppstee.submitNewStage(wgtVis, PPSTEE_STAGE_VISUALISATION);
// calculate partitioning
PPSteePart* ppart;
ppstee.getPartitioning(&ppart);
24
![Page 25: Exascale Pre and Post Processing · PowerPoint-Präsentation Author: Matura, Gregor Created Date: 12/18/2013 6:30:30 PM](https://reader036.vdocuments.us/reader036/viewer/2022071103/5fdd36622fb0a74f1737fb85/html5/thumbnails/25.jpg)
Basic usage: example
Build graph:
// get graph (as ParMETIS type)
PPSteeGraph pgraph = PPSteeGraphParmetis(MPI_COMM_WORLD, vtxdist, xadj, adjncy);
Build weights: // construct and set weights for computation
PPSteeWeights wgtCmp(&pgraph);
wgtCmp.setWeightsData(vwgt_c, adjwgt_c);
// construct and set weights for visualisation
PPSteeWeights wgtVis(&pgraph);
wgtVis.setWeightsData(vwgt_v, adjwgt_v);
25