Presentation is loading. Please wait.

Presentation is loading. Please wait.

What’s New in ParaView John Greenfield Under contract to Sandia National Laboratories Sandia is a multiprogram laboratory operated by Sandia Corporation,

Similar presentations


Presentation on theme: "What’s New in ParaView John Greenfield Under contract to Sandia National Laboratories Sandia is a multiprogram laboratory operated by Sandia Corporation,"— Presentation transcript:

1 What’s New in ParaView John Greenfield Under contract to Sandia National Laboratories Sandia is a multiprogram laboratory operated by Sandia Corporation, a Lockheed Martin Company, for the United States Department of Energy under contract DE-AC04-94AL85000.

2 Background…

3 Deploy Research to Production   Use the Visual ToolKit (VTK) as a framework   Only replace small parts of the framework with our research codes; the rest is tried, tested and supported by a whole community.

4 Sandia Vis R&D with ParaView / VTK  ParaView is an open-source visualization toolkit  Based on the VTK (Visualization ToolKit)  Sandia Vis R&D is the most significant outside technical contributor C ore algorithms that enable vastly improved parallel performance. C ore algorithms that enable vastly improved parallel performance. Volume rendering (synthetic x-rays of simulation results) Volume rendering (synthetic x-rays of simulation results) Image delivery to the desktop. Image delivery to the desktop. Driving 60 mega-pixel display walls. Driving 60 mega-pixel display walls. Able to interactively explore Sandia’s largest simulation data sets (> 70 million finite elements). Able to interactively explore Sandia’s largest simulation data sets (> 70 million finite elements).  ParaView stats ParaView: 30 downloads / day around the world. ParaView: 30 downloads / day around the world. VTK (Visualization ToolKit) is used by over 25,000 people worldwide. VTK (Visualization ToolKit) is used by over 25,000 people worldwide.

5 Sandia Production…

6 Sandia ParaView Production Environment  Average 25 users per month  47 different users in 2QFY05  Scripts for easy use on clusters Allows use of data in place without moving it. Allows use of data in place without moving it. Allows easy parallel rendering for performance. Allows easy parallel rendering for performance.  Available on Linux, Windows, SGI, Mac OSX.

7 Current Sandia Additions…

8 Performance  New Way Directly Load 1900 exodus files: 45 seconds Directly Load 1900 exodus files: 45 seconds Clip data 20 seconds Clip data 20 seconds No copying or moving the data at all No copying or moving the data at all “Runtime Vis”: Analysts can look at data as soon as the restart files hit the disk “Runtime Vis”: Analysts can look at data as soon as the restart files hit the disk  Old Way Copy/convert data into proper format (hours) Copy/convert data into proper format (hours) New way: Convert using R&D software (minutes) New way: Convert using R&D software (minutes) Load converted data 7 minutes Load converted data 7 minutes Clip data 4 minutes Clip data 4 minutes

9 D3 Load Balancing and Data Distribution  Load balancing  Data distribution  Multi-file Cleanup  Ghost cell computation!

10 ICE-T Parallel Rendering  Good load balancing characteristics  Excellent Scalability (1.5 Billion tri/sec in 2005)  Supports both Desktop Delivery and Tiled Displays  ICE-T is now the default for all parallel rendering in ParaView (faster/better than Kitware’s alternatives)  20 fps at the Desktop (reduced image res during interaction, full at stop)

11 Movie

12 Performance Results  Aggregate rate of over 1.5 billion polygons per second.  128 Processor Cluster running servers  Desktop client connected at 100 Mbps  Visualizing one of the world’s largest polygonal datasets, a 473 million triangle isosurface generated from a Richtmyer- Meshkov simulation run at LLNL (LLNL: UCRL-MI- 151066).

13 Higher Order Elements  Typical approximation  Correct  “Rendering Higher Order Finite Element Surfaces in Hardware”, Proceedings of GRAPHITE, Melbourne Australia, February 2003.

14 Quadratic Elements  Old Way: Hex-20 (incorrect)  New Way: Hex-20 (correct)

15 VTK & Chromium

16 Along the Way  Generic tetrahedral refinement algorithm available in ParaView now for tri-quadratic elements.  Mesh quality filter now in ParaView (for benchmarking our refinement algorithm, but may also be useful to meshing community).

17 Unstructured Volume Rendering

18 CTH AMR (Brand New!)

19 Lookmarks What? Quick and easy way to switch between views How? Bookmarking tool that Adds, Removes, Updates, Organizes, Imports, and Saves Lookmarks Why? Why? -Time Savings -Collaboration-Comparison-Organization

20 Why? Why? Time Savings Time Savings Collaboration Collaboration Comparison Comparison Organization Organization

21 Sandia's current contributions to ParaView  Work on the image delivery system.  Lookmarks – Visual Bookmarks  D3: Load balancing and data distribution.  IceT: parallel rendering.  Higher order elements: Adaptive sampling of quadratic elements  Unstructured Volume Rendering.  Mesh Quality Measures  Exodus Reader and Writer  CTHAMR Reader

22 Sandia's current contributions to VTK  VTK OpenGL extension manager  vtkPainter  vtkParallelRenderManager  ICE-T  Volume rendering  vtkMemoryCoherenceFilter  vtkOptimizer  vtkFixTetrahedra  vtkGradientFilter

23 Sandia's current contributions to VTK (cont.)  vtkInteractorStyleRubberBandZoom2:  vtkItsReader/Writer: Reads/writes files in its format.  vtkTrisReader/Writer: Reads/writes files in.tris format.  vtkPerturbPoints:  A technique for subdividing tetrahedra, triangles, and lines such that any coincident edges or faces are always subdivided the same way.  A filter that converts quadratic finite elements into a collection of linear finite elements adaptively

24 Sandia's current contributions to VTK (cont.)  Higher Order Elements  A programming interface (developed jointly with Kitware) to allow "read-only" access to higher order finite elements  Code for representing higher order (quadratic and higher) finite elements in a more generic and extensible way  Readers and writers for storing/retrieving the above meshes to/from disk in an XML file format.  Techniques for visualizing the above meshes using isosurfaces and deformed, colored boundary surfaces.  A parallel rendering infrastructure in vtk to support Chromium.  A utility for performing automated tests of visualization code based on VTK's techniques

25 Sandia's current contributions to VTK (cont.)  File writer that is capable of writing out EnSight Gold files.  Added functionality to the Exodus reader that allows it to parse a Material/Part/Assembly XML metadata file and organize blocks within ParaView based on that information.  Bug-fixes to a Delaunay triangulation routine to correct invalid mesh output

26 Future Sandia Additions…

27 Future additions  Improved interface to plotting  Parallel volume rendering  Shading  Targeted interfaces  Side-by-side views – Real and phase space.  Oculus – volume rendering application

28 Parallel Volume Rendering in ParaView  D3 (already in ParaView) can, in parallel, divide a data set by a K-D tree.  Visibility sorting of a K-D tree is simple.  ICE-T (already in ParaView) has the capability of compositing images in order.  So… our approach to parallel volume rendering is to divide the data by a K-D tree and use the tree to order the ICE-T compositing.

29 Perceptual Clues (upcoming)  Shadows

30 Perceptual Clues (upcoming)  New way: Could use meta data to show realistic material properties  Old way: Some random colors

31 Next Directions  Unique functionality and performance is good  “One size fits all” user interface with 10000 buttons is not  Put ‘targeted interfaces’ on top of all the vis code we already have.

32 Prism  Link simulation geometry view with multiple phase space views to promote understanding of the physics

33 Oculus  Oculus is a volume rendering application with a focus on generating images that are comparable to those made in high energy density physics (HEDP) experiments.

34 VtkHardwareShader – Cg, GLSL, etc.  Materials assigned per-vtkActor through vtkProperty End-user (ParaView) assigns Materials to objects in the scene End-user (ParaView) assigns Materials to objects in the scene VTK-based applications coordinate vtkActors and Materials VTK-based applications coordinate vtkActors and Materials  XML Material file Describes a shader and it's interface to VTK (types, values, etc.) Describes a shader and it's interface to VTK (types, values, etc.) Values for vtkProperty data members Values for vtkProperty data members Al 2040, Brushed Al 2040,1040 Steel, etc. Al 2040, Brushed Al 2040,1040 Steel, etc.  VtkPainters will access all Vertex Attributes ( VTK only sets 4!)  Extend vtkDataSetAttributes to flag attributes for hardware VtkDataSetAttributes::SetVertexAttrib{0...N}(...) VtkDataSetAttributes::SetVertexAttrib{0...N}(...)

35 VtkHardwareShader and Decorator

36 VtkHardwareShaderProperty – vtkSNL Prototype

37 vtkPainters  vtkPainters are a replacement for vtkPolyDataMapper.  vtkPolyDataMapper is monolithic. Obfuscated code. Obfuscated code. Hard to extend. Hard to extend. Not ready for use with shaders. Not ready for use with shaders.  A vtkPainter is just a piece of the rendering process. Painters are chained together to form functionality of a mapper. Painters are chained together to form functionality of a mapper.

38 vtkPainters vtkOpenGLPolyDataMapper vtkMapScalarsPainter vtkOpenGLClipPlanesPainter vtkOpenGLLightingPainter vtkOpenGLWireframePainter vtkOpenGLDisplayListPainter vtkVertexArrayPainter

39 vtkPainterDeviceAdapter  Painters do not (necessarily) make direct OpenGL calls. They use a vtkPainterDeviceAdapter. They use a vtkPainterDeviceAdapter.  The vtkPainterDeviceAdapter provides an abstract interface for pushing attributes (i.e. vertex positions, colors, etc.).  Easy to swap the standard vtkPainterDeviceAdapter with one that sends to Cg or Sh or HLSL or whatever.

40 END


Download ppt "What’s New in ParaView John Greenfield Under contract to Sandia National Laboratories Sandia is a multiprogram laboratory operated by Sandia Corporation,"

Similar presentations


Ads by Google