Switch VecOfArrays for RecursiveArrayTools's VectorOfArray#2952
Switch VecOfArrays for RecursiveArrayTools's VectorOfArray#2952benegee wants to merge 10 commits into
Conversation
Review checklistThis checklist is meant to assist creators of PRs (to let them know what reviewers will typically look for) and reviewers (to guide them in a structured review process). Items do not need to be checked explicitly for a PR to be eligible for merging. Purpose and scope
Code quality
Documentation
Testing
Performance
Verification
Created with ❤️ by the Trixi.jl community. |
|
Still seems to work. CI failures are due to codecov issues. |
|
I'm not sure I understand - you seem to have replaced some |
|
Yes, exactly. I failed to delete the file while merging. |
was re-added during merge [skip ci]
sloede
left a comment
There was a problem hiding this comment.
As far as I can tell, the main difference is that now we have to wrap the outer vector of vectors in a VectorOfArray and then access the inner vector/array with val.u[i] instead of val[i], is that correct?
Have you verified (for at least one 3D run maybe) that there are no differences in performance and memory allocations (especially with multithreading)?
| # Buffer to copy solution values of the large element in the correct orientation | ||
| # before interpolating | ||
| u_buffer = cache.u_threaded[Threads.threadid()] | ||
| u_buffer = cache.u_threaded.u[Threads.threadid()] |
There was a problem hiding this comment.
This looks a bit odd :D But I guess this is what we get from using VectorOfArray. The .u might be a bit confusing, though
There was a problem hiding this comment.
Would it make sense to hide it? I.e., store the VectorOfArray in cache.__u_threaded and then cache.u_threaded = cache.__u_threaded.u?
There was a problem hiding this comment.
I don't know, it is a bit unfortunate that both for us and VectorOfArray u plays such a central role
Yes! This is what happened:
Well, that could work!
No, I haven't. We would need to compare the old |
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## main #2952 +/- ##
==========================================
+ Coverage 97.13% 97.14% +0.01%
==========================================
Files 623 622 -1
Lines 48385 48367 -18
==========================================
- Hits 46996 46985 -11
+ Misses 1389 1382 -7
Flags with carried forward coverage won't be shown. Click here to find out more. ☔ View full report in Codecov by Sentry. 🚀 New features to boost your workflow:
|
Continuing #2491