我有一个用C ++于2005年编写的应用程序的源代码,用于32位体系结构并使用了MPICH-1库。我知道逻辑,我想使用MPICH-2升级64位计算机的源代码。

MPICH-1的语法/语义与MPICH-2有何不同?我应该考虑重新设计软件还是将MPI功能更改为较新的版本就足够了?

最佳答案

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年中,已经取得了很大的进步(肯定比这个答案中所能发布的要多得多)。

关于c++ - 将MPICH-1源代码移植到MPICH-2,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/22052704/

10-10 21:29