2013-07-25 59 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