我是集群编程的新手。我有一个由 6 台计算机组成的集群,我想要实现的是运行包含多个线程的代码,使这些线程在不同的机器上运行,然后将输出返回到主机。
我怎样才能实现这样的任务?我尝试使用 pvm 和 mpich2,但找不到这样的规定。请帮忙。
我是集群编程的新手。我有一个由 6 台计算机组成的集群,我想要实现的是运行包含多个线程的代码,使这些线程在不同的机器上运行,然后将输出返回到主机。
我怎样才能实现这样的任务?我尝试使用 pvm 和 mpich2,但找不到这样的规定。请帮忙。
看看hpx。它位于https://github.com/STEllAR-GROUP/hpx
这是在 c++now 上关于 hpx 的演示文稿的 pdf 链接
当你说你想要多台机器上的多个线程时,你是指这些机器上的线程而不是进程吗?如果是,为什么?一般来说,MPI(无论是 Open MPI、MPICH 还是其他一些实现)都可以做到这一点,甚至可以与 Open MP 结合以在这些机器上提供线程。一个快速的谷歌搜索可能会提供一千个关于如何设置的教程。
但是,这些库的工作方式需要您对代码进行一些更改。他们不是魔法。您需要使用消息显式传递重要数据。有许多有用的功能可以使它尽可能高效。