1 / 35

What’s New in ParaView

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. Background….

frisco
Download Presentation

What’s New in ParaView

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

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 • Core algorithms that enable vastly improved parallel performance. • Volume rendering (synthetic x-rays of simulation results) • Image delivery to the desktop. • Driving 60 mega-pixel display walls. • Able to interactively explore Sandia’s largest simulation data sets (> 70 million finite elements). • ParaView stats • ParaView: 30 downloads / day around the world. • 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 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 • Clip data 20 seconds • No copying or moving the data at all • “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) • New way: Convert using R&D software (minutes) • Load converted data 7 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. 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).

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

  13. VTK & Chromium

  14. 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).

  15. Unstructured Volume Rendering

  16. CTH AMR (Brand New!)

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

  18. Why? • Time Savings • Collaboration • Comparison • Organization

  19. 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

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

  21. 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

  22. 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

  23. 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

  24. Future Sandia Additions…

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

  26. 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.

  27. Perceptual Clues (upcoming) • Shadows

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

  29. 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.

  30. Prism • Link simulation geometry view with multiple phase space views to promote understanding of the physics

  31. 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.

  32. VtkHardwareShader – Cg, GLSL, etc. • Materials assigned per-vtkActor through vtkProperty • End-user (ParaView) assigns Materials to objects in the scene • VTK-based applications coordinate vtkActors and Materials • XML Material file • Describes a shader and it's interface to VTK (types, values, etc.) • Values for vtkProperty data members • 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}(...)

  33. vtkPainters • vtkPainters are a replacement for vtkPolyDataMapper. • vtkPolyDataMapper is monolithic. • Obfuscated code. • Hard to extend. • 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.

  34. vtkPainterDeviceAdapter • Painters do not (necessarily) make direct OpenGL calls. • 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.

  35. END

More Related