-
Notifications
You must be signed in to change notification settings - Fork 33
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
PABLO: fix parallel 2:1 balance #426
Conversation
53069cc
to
7565f32
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I've used this branch in immerflow to run the NACA0012 and the 3D sphere test case with a wide range of processors from 1 to 24. I don't see any problem.
src/PABLO/ParaTree.cpp
Outdated
// Balance 2:1 the tree | ||
// | ||
// After the first step only ghost octants are checked for balance, that's because | ||
// during this stemps we only need to propagate the marker across the processes. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
"this stemps"?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Fixed.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Hard to see in a real case, but I suppose that in the previous version, internals were not properly balanced because of lack in information from ghosts. Now the algorithm seems more correct.
7565f32
to
9b72e42
Compare
The first 2:1 balancing was only checking internal octants, however the balancing algortihm uses marker information from the neighbours of the checked octants and the neighbours could be ghosts octants. It is therefore necessary to exchange the adaption markers before starting balancing a partitioned tree.
9b72e42
to
e13889a
Compare
I changed the commit message to better explain why we need to exchange marker information before starting balancing the tree. |
Before starting balancing a partitioned tree, it is necessary to exchange the adaption markers.