e3fp icon indicating copy to clipboard operation
e3fp copied to clipboard

Replacing python_utilities.parallel

Open sethaxen opened this issue 3 years ago • 1 comments

python_utilities.parallel has always been a bit of a hack to have a unified API for 4 parallelization approaches: serial, distributed, multithreaded, and message passing. It would be better to call that functionality from a better tested and maintained package, but I have until now been unable to find one. It looks like Ray might have this functionality. Their API is quite different, so it would take a little work to switch us over to their API.

sethaxen avatar Jun 02 '22 19:06 sethaxen

Alternatively, mpi4py.futures.MPICommExecutor is a child of concurrent.futures.Executor, so we could perhaps just use Executor API functions to support all 4 modes. I don't see a SequentialExecutor or SerialExecutor anywhere, so we may need to roll our own.

sethaxen avatar Jun 03 '22 09:06 sethaxen