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

Test with schedulers and MPI #4

Open
greschd opened this issue Feb 21, 2020 · 3 comments
Open

Test with schedulers and MPI #4

greschd opened this issue Feb 21, 2020 · 3 comments
Labels
topic/mock-code Concerns the code mocking feature topic/testing

Comments

@greschd
Copy link
Member

greschd commented Feb 21, 2020

The code is currently tested with (and designed for) a direct, non-MPI calculation only. We should test if it works also with schedulers and MPI.

@greschd greschd modified the milestone: Version 0.1 release Feb 21, 2020
@espenfl
Copy link

espenfl commented Feb 25, 2020

Scheduler testing framework is hopefully soon in place as well which makes testing this a bit easier: aiidateam/aiida-core#3805.

@greschd greschd added topic/mock-code Concerns the code mocking feature topic/testing labels Feb 27, 2020
@ltalirz
Copy link
Member

ltalirz commented Nov 19, 2020

As far as I can see, mpi currently cannot work because:

I have opened #47 that simply replaces these two lines by a direct call to the remote executable, which makes it possible to run executables through mpirun (withmpi=True) - but only on a single MPI process.

In order for the same approach to work with multiple processes, mock-code needs to become a parallel program, with MPI rank 0 doing all the hashing & storing, and calling the remaining MPI ranks only for the executable.
I played a bit with mpi4py in order to do this (see this branch), but my impression is that this makes things significantly more complicated and difficult to test.

It's not clear to me whether it is necessary to introduce this complexity, and perhaps there are easier ways, like getting AiiDA to always run the mock code without mpi, and forward the request to do MPI via an environment variable.

@greschd Let me know what you think.

@greschd
Copy link
Member Author

greschd commented Nov 19, 2020

Hmm, I think the best solution here depends on what comes of our discussion to hook into AiiDA before the code is actually being called (in #43).

If the mock-code doesn't actually need to be a standalone executable, these problems would go away.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
topic/mock-code Concerns the code mocking feature topic/testing
Projects
None yet
Development

No branches or pull requests

3 participants