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

Re-factor MPI native tests to run as distributed tests #186

Closed
wants to merge 8 commits into from

Conversation

csegarragonz
Copy link
Collaborator

@csegarragonz csegarragonz commented Nov 29, 2021

In this PR I adapt all the existing mpi-native tests to run in our current distributed test setting. Most of the code in place can be re-used with very minimal changes.

Two tests are left with the [.] tag as they used MPI_Win_create which we removed some time ago.

@csegarragonz csegarragonz force-pushed the mpi-dist-tests branch 2 times, most recently from 71d78f6 to 45b90ef Compare November 29, 2021 10:42
@@ -43,6 +43,33 @@ std::set<std::string> getExecGraphHosts(const ExecGraph& graph)
return getExecGraphHostsForNode(graph.rootNode);
}

std::vector<std::string> getMpiRankHostsFromExecGraphNode(
Copy link
Collaborator Author

Choose a reason for hiding this comment

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

I reckon this method may be too MPI-specific for ExecGraph.cpp but I am not sure where to put it.

@csegarragonz csegarragonz self-assigned this Nov 29, 2021
@csegarragonz csegarragonz added the mpi Related to the MPI implementation label Nov 29, 2021
- name: "Build examples"
run: inv examples
- name: "Run example to check"
run: inv examples.execute check

mpi_native:
Copy link
Collaborator Author

Choose a reason for hiding this comment

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

The mpi_native tests will now run as part of the distributed tests. What also means that will be checked against each new commit in a PR (not just when bumping docker images).

@@ -1,15 +1,9 @@
#include <faabric/mpi/mpi.h>
Copy link
Collaborator Author

Choose a reason for hiding this comment

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

For all MPI examples I've just had to remove the main function, and change the method name and namespace.

Note that I've opted to add a nested namespace, tests::mpi, as some function names where quite general.

@csegarragonz csegarragonz force-pushed the mpi-dist-tests branch 2 times, most recently from ef2344c to 2df20de Compare November 29, 2021 18:34
@csegarragonz
Copy link
Collaborator Author

May re-open this in the future.

@csegarragonz csegarragonz deleted the mpi-dist-tests branch April 22, 2022 15:55
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
mpi Related to the MPI implementation
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant