我正在尝试将ipyparallel
作为multiprocessing
在我的主 - 从属体系结构中的替代方案。与ipyparallel群集共享队列
也就是说,目前所有的进程有两个队列:
- 一个从主任务奴隶
- 一个从奴隶结果掌握。
目前我使用multiprocessing.Manager().Queue()
队列进行通信。但看起来它们不能与ipyparallel
进程共享。
我这样做的原因(而不仅仅是通过函数)是因为从头开始设置工作人员几乎与执行计算一样昂贵(在计算方面)。我倾向于运行一个函数(通过map_async
或类似的方法)来设置工作环境,执行第一次计算,将结果推送到结果队列,然后从任务队列中获取(显着更小)的更新并重复最后几步直到停止(再次通过队列)。
如果对这类任务有一个更好的方法/框架(它必须是python,但是),我全是耳朵。
由于