-
Notifications
You must be signed in to change notification settings - Fork 14
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
Use busy waiting barrier in reduction to band #864
Conversation
f3fec58
to
cc47b18
Compare
cscs-ci run |
This is high priority for performance in reduction to band, but on hold until the next pika release. |
74c655f
to
ad057ec
Compare
cscs-ci run |
I've added a config option to busy wait in the tridiagonal solver barriers as well but I have not yet tested if it has the same effect as in the reduction to band algorithm. |
cscs-ci run |
2e9941b
to
1fe1643
Compare
cscs-ci run |
add94c2
to
a5ff63e
Compare
a5ff63e
to
b8d5b03
Compare
cscs-ci run |
I rebased this and made the default busy wait time 0 for the rank 1 problem barrier. |
Fixes #833, using the busy wait parameter to
barrier::wait
in pika-org/pika#685. I've added configuration option for the busy wait time (in microseconds) specifically for reduction to band. #860 will probably also need to use the busy waiting barrier. We can see if we want to merge the options into a singleBARRIER_BUSY_WAIT_US
option, or if we need separateTRIDIAG_SOLVER_BARRIER_BUSY_WAIT_US
,RED2BAND_BARRIER_BUSY_WAIT_US
etc. The default value for the busy wait is 1 ms which seemed to show the best performance across daint and eiger, while still being relatively low (about the min task size that we anyway recommend).