2013-07-25 116 views
0

我是群集编程的新手。我有一个包含6台计算机的集群,我想要实现的是运行包含多个线程的代码,以便这些线程运行在不同的机器上,然后将输出返回到主机。在远程机器上运行线程

我该如何执行这样的任务?我尝试使用PVM和MPICH2,但无法找到这样的规定。请帮忙。

回答

3
+0

感谢这一点,但不能识别如何运行远程机器上的程序的一部分,我找不到一个这样的例子。请帮忙。 – user123456

+0

一个这样的例子将在这里:https://github.com/STEllAR-GROUP/hpx/blob/master/examples/quickstart/hello_world.cpp –

1

当你说你要在多台机器多个线程,你专门就意味着线程演示文稿的PDF链接关于HPX那些机器而不是流程?如果是这样,为什一般而言MPI(无论是Open MPI,MPICH还是其他一些实现)都可以完全实现,甚至可以与Open MP结合使用,以在这些机器上提供线程。快速Google搜索可能会提供一千个关于如何设置的教程。

但是,这些库的工作方式需要对代码进行一些更改。他们不是魔术。您需要使用消息明确传递重要数据。有很多有用的功能可以尽可能提高效率。

+0

好吧,我不知道如何将mpi用于单个程序,也就是说我有一个程序,比方说用并行处理和强力生成素数,检查每个数字。我想要做的是检查不同计算机上的不同范围,并检索结果。 – user123456

+0

这正是MPI的用途。它专为SPMD程序设计。你可以找到很多有关MPI的教程,但这里有一个很好的教程(虽然有点过时,但仍然适用)http://www.mcs.anl.gov/research/projects/mpi/tutorial/gropp/talk.html。 –

+0

感谢这个教程,仍然有疑问。我在主机和从机上安装了mpi,并且在运行示例时,只有在两台机器上都存在相同的可执行文件的情况下才会在从机上执行,是这样吗? – user123456