使用多处理模块进行集群计算

astrofrog:

我对使用计算机集群运行Python程序感兴趣。过去我一直在使用Python MPI接口,但是由于在编译/安装这些接口时遇到困难,我更喜欢使用内置模块(例如Python的多处理模块)的解决方案

我真正想做的就是设置一个multiprocessing.Pool跨整个计算机集群实例,并运行一个Pool.map(...)这是可能/容易做到的事情吗?

如果这不可能,那么我至少希望能够Process从中央脚本在每个节点上为每个节点使用不同参数来启动实例。

肖恩·奇恩(Shawn Chin):

如果通过集群计算来表示分布式内存系统(多个节点而不是SMP),那么Python的多重处理可能不是合适的选择。它可以产生多个进程,但它们仍将绑定在单个节点内。

您将需要一个框架来处理跨多个节点的进程,并提供一种用于处理器之间通信的机制。(几乎是MPI所做的)。

有关有助于群集计算的框架列表,请参见Python Wiki上的“ 并行处理 ”页面

从列表中看ppjugpyrocelery似乎是明智的选择,尽管由于我对它们中的任何一个都没有经验(我主要使用MPI),所以我不能亲自担保。

如果安装/使用的便利性很重要,那么我将从探索开始jug易于安装支持常见的批处理群集系统,并且文件记录良好

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章