Skip to content
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

Rewrite MPI Communication utilities #96 #116

Open
wants to merge 9 commits into
base: main
Choose a base branch
from

Conversation

kathrynle20
Copy link
Contributor

Issue #96
Added MPI Communication class to support MPI in a truly decentralized system. Server will listen for requests and send information when request is received. Client will send a request and receive the response. The methods in this class are non-blocking.

@kathrynle20 kathrynle20 marked this pull request as draft October 21, 2024 04:04
@kathrynle20 kathrynle20 marked this pull request as ready for review October 22, 2024 14:32
@kathrynle20 kathrynle20 marked this pull request as draft October 28, 2024 16:35
@kathrynle20 kathrynle20 marked this pull request as ready for review November 6, 2024 03:48
@kathrynle20
Copy link
Contributor Author

MPI support currently uses blocking send and recv MPI calls. In the future, we will add non-blocking send and recv calls. Currently, the MPICommUtils class will spin a listener thread for every node that listens for a receive request from another node. Once that request is received by the sender node, the sender node will send the requested information to the receiving node on the listener thread while the main thread continues to train. MPI support has been tested using 10 and 100 samples per node, 3 + 1 nodes and up to 10 rounds.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant