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

Question about parallelization #138

Open
AmirShahbazi90 opened this issue May 16, 2023 · 4 comments
Open

Question about parallelization #138

AmirShahbazi90 opened this issue May 16, 2023 · 4 comments

Comments

@AmirShahbazi90
Copy link

Is it possible to use NOMAD in parallelization both for python and matlab?

@jan-provaznik
Copy link
Contributor

Current release of PyNOMAD is compiled without OpenMP support. The same goes for MATLAB interface.

You can bring your own parallelism by setting BB_MAX_BLOCK_SIZE and evaluating blocks in parallel with, for example, mpi4py.futures.MPIPoolExecutor or concurrent.futures.ProcessPoolExecutor and a pool of (remote) processes.

@TianningGao
Copy link

Is it possible to run PSD-MADS in NOMAD4 just like in NOMAD3?
For example, if I set BB_EXE "$python3 my_func.py" and PSD_MADS_OPTIMIZATION TRUE in "param.txt", will it call PSD-MADS if I simply run $NOMAD_HOME/bin/nomad param.txt ? Or do I have to use mpirun to call $NOMAD_HOME/bin/nomad?

@ctribes
Copy link
Contributor

ctribes commented Jun 21, 2023

PSD-Mads in Nomad 4 is based upon OpenMP. In Nomad 3 it uses mpi. The algo is essentially the same in the two Nomad versions.
In Nomad 4, the activation of PSD-Mads algorithm requires building Nomad with OpenMP (if it is available it is enabled by default, and you will see a "-- Test OpenMP for parallel functionalities -- found" during cmake setup) and the PSD_MADS_OPTIMIZATION parameter set to True.

@TianningGao
Copy link

@ctribes Got it, thanks.

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

4 participants