This allows parallelization across several machines based on mpi4py.
Effectively multiprocessing.Pool is replaced by mpi4py.futures.MPIPoolExecutor which does practically the same but with support for more than one machine.
It is also required by mpi4py (and good practice as well) to put everything that should be executed when the file is run into the __name__ == "__main__" block which I also did.
Finally regarding the install, I really had trouble installing primedRPA, so I found it easiest to afterwards install mpi4py as I mentioned in the README.md. This only installed the single mpi4py package and didn't alter anything else.
This allows parallelization across several machines based on
mpi4py
.Effectively
multiprocessing.Pool
is replaced bympi4py.futures.MPIPoolExecutor
which does practically the same but with support for more than one machine.It is also required by mpi4py (and good practice as well) to put everything that should be executed when the file is run into the
__name__ == "__main__"
block which I also did.Finally regarding the install, I really had trouble installing primedRPA, so I found it easiest to afterwards install
mpi4py
as I mentioned in theREADME.md
. This only installed the singlempi4py
package and didn't alter anything else.