Skip to content

OSC RDMA initialization cleanups #9835

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

Merged

Conversation

bwbarrett
Copy link
Member

This is the first chunk of PRs aimed at fixing #8983. This will ensure that "accelerated" BTLs (those that have native RDMA and can reach all peers) also provide the required remote completion. This is not a complete fix for #8983, as the alternate BTL path in the osc rdma component still has a remote completion failure mode. Patches for that will be coming as a follow-on patch series.

Copy link
Contributor

@wzamazon wzamazon left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The commit message of 1st commit:

Rename the list of btls will full connectivity from

I thin will should be with

bwbarrett and others added 6 commits January 5, 2022 16:02
Add ofi to the list of btls that do not need to verify connectivity,
since the most common use case of OFI does provide this property.

Rename the list of btls with full connectivity from
ompi_osc_rdma_btls to ompi_osc_rdma_full_connectivity_btls to make
it a little more clear what the list represents.

Signed-off-by: Brian Barrett <[email protected]>
When the rdma and pt2pt onesided components both existed, there was
a use case for lowering the priority of the RDMA component when
certain MTLs are in use.  With the pt2pt component removed, this
is dead code.

Signed-off-by: Brian Barrett <[email protected]>
With the removal of the pt2pt component, there's really not an
advantage to having 2 levels of priority (depending on whether
we have a true rdma btl or emulated), so go with a single priority.

Signed-off-by: Brian Barrett <[email protected]>
The RDMA OSC component requires remote completion for its
synchronization algorithms to work properly.  This is phase one of two
to handle BTLs which do not provide remote completion.

This patch requires "accelerated" BTLs to support remote completion.
Accelerated BTLs are those which can communicate with all peers in the
Window (so multiple BTLs per Window are not used), natively provide
the required put/get/atomic operations, and which can register suitable
memory for the window's communication.

Signed-off-by: Wei Zhang <[email protected]>
Signed-off-by: Brian Barrett <[email protected]>
No functional changes (an initialization was reordered to make
documentation easier), but add documentation about BTL selection
behavior.

Signed-off-by: Brian Barrett <[email protected]>
Skipping the over-optimization of supporting a BTL that can talk
native RDMA to everyone but self (we don't have one of those today)
allows a large simplification of the accelerated BTL selection on the
OSC RDMA component.

Signed-off-by: Brian Barrett <[email protected]>
@bwbarrett bwbarrett force-pushed the bugfix/rdma-osc-accelerated-path branch from 2630f84 to e0a5b8d Compare January 5, 2022 16:08
@bwbarrett
Copy link
Member Author

Updated with the commit message cleaned up and the comment cut-n-paste issue removed.

@bwbarrett bwbarrett merged commit 22d9937 into open-mpi:master Jan 6, 2022
@bwbarrett bwbarrett deleted the bugfix/rdma-osc-accelerated-path branch January 6, 2022 18:26
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants