Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Performance audit #111

Closed
28 tasks
DanielVandH opened this issue May 13, 2024 · 1 comment
Closed
28 tasks

Performance audit #111

DanielVandH opened this issue May 13, 2024 · 1 comment
Labels
documentation Improvements or additions to documentation help wanted Extra attention is needed

Comments

@DanielVandH
Copy link
Member

DanielVandH commented May 13, 2024

Now that the package is a stable state, it would be a good idea to do a performance audit and track the performance of the package over each version. This could also be run in the CI, although I'm not sure how to set that up and I'm not particularly bothered one way or about this. This tracking could be at a high level to start with, and then as problematic functions are identified I could add tests of those lower-level functions into the test suite. Some good benchmarks to track would be:

  • Unconstrained triangulations of random point sets
  • Unconstrained triangulations of highly collinear point sets
  • Constrained triangulations with only interior segments
  • Constrained triangulations with only boundary nodes
  • Constrained triangulations with interior segments and boundary nodes
  • Constrained triangulations with holes
  • Constrained triangulations of a disjoint domain
  • Point location in an unconstrained triangulation for points in the interior, on the boundary, or outside of the triangulation
  • Point location in an unconstrained triangulation of a highly collinear set for points in the interior, on the boundary, or outside of the triangulation
  • Point location in a disjoint domain for points in the interior, on the boundary, or outside of the triangulation
  • Triangulations of a convex polygon
  • Mesh refinement of an unconstrained triangulation
  • Mesh refinement of a constrained triangulation
  • Mesh refinement of a constrained triangulation for a domain with many small angles
  • Mesh refinement of a disjoint domain
  • Triangulation and refinement of a curve-bounded domain
  • Triangulation and refinement of a curve-bounded domain with many different types of curves and a piecewise linear portion
  • Voronoi tessellation of random point sets
  • Voronoi tessellations of triangles with many shared circumcenters, e.g. of a lattice
  • Clipped Voronoi tessellations
  • Centroidal Voronoi tessellations
  • Point location in a Voronoi tessellation, i.e. nearest neighbour queries
  • Computing the pole of inaccessibility
  • Computing convex hulls from point sets directly
  • Finding what polygon contains a given point (find_polygon)
  • Predicates (might be hard to test this since the runtimes are so small)
  • Computing the statistics of a triangulation
  • Triangulations of domains with many boundary points
@DanielVandH DanielVandH pinned this issue May 13, 2024
@DanielVandH DanielVandH added documentation Improvements or additions to documentation enhancement New feature or request help wanted Extra attention is needed and removed enhancement New feature or request labels Jul 6, 2024
@DanielVandH DanielVandH unpinned this issue Jul 16, 2024
@DanielVandH
Copy link
Member Author

I'm going to close this for now. I have some plans to improve performance in some areas, including a refactoring of find_triangle, and that takes priority.

@DanielVandH DanielVandH closed this as not planned Won't fix, can't repro, duplicate, stale Sep 12, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
documentation Improvements or additions to documentation help wanted Extra attention is needed
Projects
None yet
Development

No branches or pull requests

1 participant