我有一个2005年用C ++编写的应用程序的源代码,用于32位架构并使用MPICH-1库。我知道逻辑,我想升级64位机器和MPICH-2的源代码。
MPICH-1的语法/语义与MPICH-2有何不同?我是否应该考虑重新设计软件或将MPI功能更改为更新的版本就足够了?
答案 0 :(得分: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年中,已经取得了很多进展(肯定比这个答案中发布的要多得多)。