visit-dav / visit

VisIt - Visualization and Data Analysis for Mesh-based Scientific Data
https://visit.llnl.gov
BSD 3-Clause "New" or "Revised" License
427 stars 109 forks source link

performance issue with blueprint polyhedra meshes #19135

Open cyrush opened 9 months ago

cyrush commented 9 months ago

Reported by @BradWhitlock

When plotting very large polyhedral meshes generate_sides() is called multiple times, which is slow.

Brad explored publishing the data as VTK Polyhedra and that improved performance.

Here is his branch: https://github.com/visit-dav/visit/tree/feature/whitlock/use_vtk_polyhedron_cells

We could also look into caching the generate_sides results.

cyrush commented 9 months ago

verdict:

Using full polyhedra support is the path we should pursue.

markcmiller86 commented 9 months ago

Polyehdral meshes come up in several plugins (Silo, Exodus, VTK, etc.). It would be good to have a unified way of working with them and not duplicate or use different approaches in each and every plugin that needs it.

This was attempted in Silo plugin...develop a generalized method to load a polyehdral mesh from plugin upwards and in avtTransformManager do whatever magic transformation to convert (if needed) to what VisIt needs internally.