Speed up idp correction function#2644
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. |
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## main #2644 +/- ##
=======================================
Coverage 97.01% 97.01%
=======================================
Files 561 561
Lines 44114 44117 +3
=======================================
+ Hits 42796 42799 +3
Misses 1318 1318
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:
|
DanielDoehring
left a comment
There was a problem hiding this comment.
Cool!
Some minor comments regarding code explanatory
|
The failing downstream test is expected since the test results from the sedov blast example slightly changed. I will adapt the file in Trixi2Vtk.jl when this one here is merged. |
|
Since the first 3d PR is merged, I will also add the updated version of the 3d correction stage in this PR. |
|
I added the new (updated) version of the 3d correction stage in e407366. and with polynomial degree of 5: |
|
The PR is ready to merge. Since the order of operations changed, I had to adapt some tests, including the one which is used in tests in Trixi2Vtk.jl (test files in Trixi2Vtk_reference_files). Therefore, we need to force push a PR at some point. |
|
As discussed in the Trixi meeting before Christmas, I created trixi-framework/Trixi2Vtk_reference_files#12 in Trixi2Vtk_reference_file to update the reference files accordingly to those changes here. In my opinion, this is ready to go. @ranocha @sloede What do you say? |
|
I'll close and re-open this PR to start a new CI run. |
|
Thanks a lot @ranocha ! |
* Add alternative idp correction * Implement suggestions * Adapt test results * Remove old version * Apply updated 3d version * Comments --------- Co-authored-by: Daniel Doehring <daniel.doehring@rwth-aachen.de> Co-authored-by: Hendrik Ranocha <ranocha@users.noreply.github.com>
This PR speeds up the implementation of
perform_idp_correction!byfor i in 2:nnodes(dg)instead of nodesfor i in eachnode(dg)since noifs are needed anymore.multiply_add_to_node_vars!Performance difference for polynomial degree of 3 (I'm using 1024 elements):
Polynomial degree of 5:
This was with Julia 1.12 on 1 thread.