【发布时间】:2016-06-13 22:12:21
【问题描述】:
我想使用 mpi4py 包使用 python 进行分布式编程。出于测试原因,我通过谷歌容器引擎建立了一个 5 节点的集群,并相应地更改了我的代码。但是现在,我的下一步是什么?如何让我的代码在所有 5 台虚拟机上运行和工作?
我尝试从集群中通过 ssh-connect 连接到一台虚拟机并运行代码,但很明显代码并未分发,而是留在同一台机器上 :( [参见下面的示例]
.
代码:
from mpi4py import MPI
size = MPI.COMM_WORLD.Get_size()
rank = MPI.COMM_WORLD.Get_rank()
name = MPI.Get_processor_name()
print("Hello, World! I am process/rank {} of {} on {}.\n".format(rank, size,name))
.
输出:
mpiexec -n 5 python 5_test.py
你好,世界!我是 gke-cluster-1-000000cd-node-mgff 上的 5 个进程/排名 0。
你好,世界!我是 gke-cluster-1-000000cd-node-mgff 上的 5 个进程/排名 1。
你好,世界!我在 gke-cluster-1-000000cd-node-mgff 上的进程/排名 2,共 5 个。
你好,世界!我在 gke-cluster-1-000000cd-node-mgff 上的进程/排名 3,共 5 个。
你好,世界!我是 gke-cluster-1-000000cd-node-mgff 上 5 个进程/第 4 个。
【问题讨论】:
标签: python google-compute-engine distributed-computing google-kubernetes-engine mpi4py