I am confused here. I have an application that is CPU bounded so I went to implementing a parallelisation using multiprocess to overcome GIL issues.
I first tried to use multiprocessing
and futures
but I faced a pickling issue so I went to pathos
which uses dill
as a pickle
replacement.
Everything is working but I am wondering if I am using the most "future proof" solution. I have seen also dask
, but I don't know if it will work in case of pickling classes issues (see Python: (Pathos) Multiprocessing vs. class methods). From the doc, it uses futures
so I am assuming that it won't do the job.
Secondly, I would like to be able to use two servers at a time and I have seen that this is possible with pathos
(also dask
), but I don't understand how exactly this works. This answer https://stackoverflow.com/a/26948258/6522112 only shows how to use one server. How about using 2 or more? I can't find any example about that although it seems possible as described by the package info.
Thanks for your help!