-
Notifications
You must be signed in to change notification settings - Fork 92
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
Make close of ConstraintHandler 50x faster #860
Conversation
Nice, perhaps extract to a |
Codecov ReportAll modified and coverable lines are covered by tests ✅
❗ Your organization needs to install the Codecov GitHub app to enable full functionality. Additional details and impacted files@@ Coverage Diff @@
## master #860 +/- ##
==========================================
+ Coverage 93.28% 93.29% +0.01%
==========================================
Files 36 36
Lines 5224 5235 +11
==========================================
+ Hits 4873 4884 +11
Misses 351 351 ☔ View full report in Codecov by Sentry. |
I wonder if there should exist a |
If storing it is a problem, perhaps a freedof iterator can be created using similar logic to this PR? Potentially storing a |
I guess I imagined something like https://github.com/JuliaData/InvertedIndices.jl where you would do |
Looks very neat - should for sure give the required functionality! |
While making #859 I discovered that
close!(ch)
was quite slow. Did a profile and turns out most time was spent oncopy!(ch.free_dofs, setdiff(1:ndofs(ch.dh), ch.prescribed_dofs))
. For the benchmarked test case this PR reduces the construction of a ConstraintHandler from about 2 s to 0.04 s.(Take exact speedup with grain of salt since done on laptop using battery power)