Skip to content

Conversation

@mkosmul
Copy link
Contributor

@mkosmul mkosmul commented Oct 16, 2024

No description provided.

…auto-downloading needed JDK)

* Updated dependencies and version catalog made more readable
* Removed unneccessary public and abstract modifiers from interface methods
@mkosmul
Copy link
Contributor Author

mkosmul commented Oct 16, 2024

Performance optimization and added tests for Matrix2d and Vector2d. About 10-15% speedup for a relatively large model in faceIndicesOnHalfedge at the cost of slightly less legible code.

@mkosmul
Copy link
Contributor Author

mkosmul commented Oct 17, 2024

Besides the changes in this PR, I also tried a number of different improvements, but they didn't give any measurable improvement, at least for my test case, and some even decreased performance significantly. In no particular order:

  • inlining and simplifying Matrix2d().isRegular()
  • replacing all calls to cos, sin, and sqrt from the standard library with their equivalents from commons-math3 FastMath
  • replacing various HashSet<Integer> used in folding algorithm with other implementations: TreeSet, BitSet, various implementations of IntSet from FastUtil

@Ooouch1
Copy link
Contributor

Ooouch1 commented Oct 17, 2024

A little hard to see the changes from the previous PR #390 since this PR has the same commits.
I'm glad if you can fix it. (merge the master or re-create PR based on the latest master, maybe?)

@mkosmul
Copy link
Contributor Author

mkosmul commented Oct 17, 2024

Closing in order to open new PR relative to the new master branch

@mkosmul mkosmul closed this Oct 17, 2024
@mkosmul mkosmul deleted the geometry-performance-improvements branch October 17, 2024 14:10
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants