2014-02-26 34 views
1

我有一個使用C++編寫的應用程序的源代碼,用於32位體系結構,並使用MPICH-1庫。我知道邏輯,我想升級64位機器和MPICH-2的源代碼。將MPICH-1源代碼移植到MPICH-2

MPICH-1的語法/語義與MPICH-2有何不同?我應該考慮重新設計軟件還是將MPI功能更改爲新版本就足夠了?

回答

0

TL; DR - 只需更新MPICH庫到最新版本,你都設置

首先,MPICH實際上已經漸漸超越MPICH-2現在。最新版本(3.1)最近剛剛發佈。此外,該項目不再爲每個主要版本重新命名。現在只是MPICH。

除了語義之外,MPICH暴露的API不是由MPICH開發者決定的,而是由MPI標準決定的。自MPICH-1以來,該標準已經通過了兩個主要版本,現在在3.0版本上。在1.x系列和3.x系列之間有一些重大變化,但是一切都是向後兼容的,所以你應該能夠重新編譯最新版本,並且你都已經設置好了。然而,如果你想看看最新的和最偉大的,那麼MPI 2.x和MPI 3.0中的新增功能可能會涉及單向通信。還有新的集體操作,拓撲結構,動態流程,I/O,非阻塞操作等。在過去的9年中,取得了很多進展(肯定比在此答案中發佈的要多得多)。