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

Prevent NEST from running under mpirun-control if not built with MPI #2381

Closed
heplesser opened this issue Apr 25, 2022 · 2 comments · Fixed by #2533
Closed

Prevent NEST from running under mpirun-control if not built with MPI #2381

heplesser opened this issue Apr 25, 2022 · 2 comments · Fixed by #2533
Assignees
Labels
I: No breaking change Previously written code will work as before, no one should note anything changing (aside the fix) S: Normal Handle this with default priority T: Enhancement New functionality, model or documentation

Comments

@heplesser
Copy link
Contributor

If NEST is built without MPI support, invoking NEST with mpirun -np N will create N independent NEST instances. This is a behaviour the user most likely does not desire. When writing to files, there is considerable risk that these instances will write to the same output files simultaneously, creating a mess at best.

Therefore, it would be good if an MPI-free NEST could report an error if it is run from mpirun or similar.

Unfortunately, this discussion on StackOverflow suggest this might not be solvable in general.

I still suggest we explore and close this issue if we conclude that there is no possibility to implement this feature.

@heplesser heplesser added T: Enhancement New functionality, model or documentation S: Normal Handle this with default priority I: No breaking change Previously written code will work as before, no one should note anything changing (aside the fix) labels Apr 25, 2022
@github-actions
Copy link

Issue automatically marked stale!

@github-actions github-actions bot added the stale Automatic marker for inactivity, please have another look here label Jun 25, 2022
@med-ayssar
Copy link
Contributor

Won't be feasible to check the number of processes (MPI_num) and have a flag HAS_MPI that either set to true or false during the compilation.

During execution and on kernel startup, we can check if MPI_num > 1 and not HAS_MPI => exit with error, else continue execution, or is it a too naive solution?

@github-actions github-actions bot removed the stale Automatic marker for inactivity, please have another look here label Nov 16, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
I: No breaking change Previously written code will work as before, no one should note anything changing (aside the fix) S: Normal Handle this with default priority T: Enhancement New functionality, model or documentation
Projects
Status: Done
Development

Successfully merging a pull request may close this issue.

3 participants