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

General: How to run in parallel? #10

Closed
milancurcic opened this issue Jan 6, 2021 · 4 comments
Closed

General: How to run in parallel? #10

milancurcic opened this issue Jan 6, 2021 · 4 comments

Comments

@milancurcic
Copy link

I'm playing with the example provided with the binary release (libparamonte_fortran_linux_x64_gnu_release_dynamic_heap_openmpi) and I'm not clear how to run in parallel.

In serial mode things seem okay. However, if I do:

./run.sh -n 2

I get this message in stdout (among others):

        ParaDRAM - NOTE: ParaDRAM is being used in parallel mode but with only one processor. This is computationally inefficient. 
        ParaDRAM - NOTE: Consider using the serial version of the code or provide more processes at runtime if it is beneficial.

I get the same result if I change the number of processes, or if I run the program directly, mpiexec -n 2 ./main.exe.

In reference to openjournals/joss-reviews#2741

@shahmoradi
Copy link
Member

Milan, thanks for raising this issue. The message you have copied in the above implies that you are not running the executable in parallel, rather, multiple copies of the program are being executed serially. The only other scenario that could lead to such a message being printed on the screen, is when an MPI parallelized sampler is used with only a single processor, like: ./run.sh -n 1.

Another scenario that can cause an MPI-parallelized program to not properly run in parallel is when an OpenMPI-parallelized executable is invoked via an MPICH mpiexec launcher and vice versa. Can you make confirm that you are indeed using the OpenMPI mpiexec launcher with a libparamonte_* library compiled with OpenMPI? I have tested all binaries on the release page on multiple Linux platforms and so far, not seen any problems, as long as both the mpiexec and the MPI library version and brand (MPICH / OpenMPI) match the ones used to build the binaries. The MPI library versions are mentioned on the release page. To get the MPI library version, try,

mpiexec --version

on the command line.

@shahmoradi
Copy link
Member

Hi @milancurcic, since there have been no activities on this thread for a while, I assume the issue is now resolved and close it. If there are still ongoing problems relevant to this issue, feel free to reopen it and expand on it further. Thanks!

@milancurcic
Copy link
Author

Thank you for the nudge @shahmoradi and sorry for not acting sooner. I will give this one more try now from a fresh start, and compare MPI versions.

@milancurcic
Copy link
Author

Okay, all good, I just tried it and don't have the issue that I had before.

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

No branches or pull requests

2 participants