2011-08-02 40 views
4

在MPI中,是否可以在啓動後添加新節點?例如,我有兩臺電腦已經運行了一個並行MPI應用程序。我在第三臺計算機上啓動另一個此應用程序的實例,並將其添加到現有的通信器。所有電腦都在本地網絡中。OpenMPI中的動態節點

回答

2

不,目前無法將新節點添加到正在運行的MPI應用程序中。 MPI旨在瞭解程序啓動時節點的總數。

正在完成工作(例如,在MPI-3上)處理關閉的節點。也許如果你可以添加錯誤的節點,那麼你可以添加新的節點,但這是我能想到的最接近的事情。有關MPI容錯方法的更多信息,請參見this answer

1

MPI2程序可能產生新的等級。該功能是MPI_Comm_spawn,它啓動一個新的MPI通信器上的孩子。也就是說,新隊伍與以前的隊伍有着不同的MPI_COMM_WORLD。儘管如此,應該可以製作一個包含所有當前運行等級的新通信器。

+0

我認爲這對於已連接的節點是正確的,但對於外部的新的通信世界節點不是這樣。 – ivotron