-
Notifications
You must be signed in to change notification settings - Fork 936
Import the ADAPT collective into the 4.1 #7944
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
Conversation
|
@bosilca Are you going to merge the equivalent PR into master? We like to have things in master before release branches... |
|
Converted this back to draft just so that we don't accidentally merge it until the corresponding master PRs are merged and the updates are brought back here to this PR. |
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.
Tests ok on Cisco clusters.
Do you want to squash these down and update the cherry-picked lines in the commit messages?
I note that we're missing the ialltoallv fix that went in on master (unrelated to ADAPT, but discovered during ADAPT testing).
|
I can squash those down into a single commit, and point to the cherrypicked one. I'll do it later tonight. You are right I did not import anything outside the ADAPT directory. Feel free to import as an independent PR. |
This is a meta commit, that encapsulate all the ADAPT commits in the master into a single PR for 4.1. The master commits included here are: fe73586, a4be3bb, d712645, c2970a3, e59bde9, ee592f3 and c98e387. Here is a detailed list of added capabilities: * coll/adapt: Fix naming conventions and C11 atomic use * coll/adapt: Remove unused component field in module * Consistent handling of zero counts in the MPI API. * Correctly handle non-blocking collectives tags * As it is possible to have multiple outstanding non-blocking collectives provided by different collective modules, we need a consistent mechanism to allow them to select unique tags for each instance of a collective. * Add support for fallback to previous coll module on non-commutative operations (#30) * Replace mutexes by atomic operations. * Use the correct nbc request type (for both ibcast and ireduce) * coll/base: document type casts in ompi_coll_base_retain_* * add module-wide topology cache * use standard instead of synchronous send and add mca parameter to control mode of initial send in ireduce/ibcast * reduce number of memory allocations * call the default request completion. * Remove the requests from the Fortran lookup conversion tables before completing and free it. * piggybacking Bull functionalities Signed-off-by: Xi Luo <[email protected]> Signed-off-by: George Bosilca <[email protected]> Signed-off-by: Marc Sergent <[email protected]> Co-authored-by: Joseph Schuchart <[email protected]> Co-authored-by: Lemarinier, Pierre <[email protected]> Co-authored-by: pierrele <[email protected]>
Bring #7716 to 4.1