我需要在一个集群中实现MPI系统。如果这里有任何人有MPI(MPICH/OpenMPI)方面的经验,我想知道哪个更好,并且如何在x86_64盒子的集群上提高性能。
我需要在一个集群中实现MPI系统。如果这里有任何人有MPI(MPICH/OpenMPI)方面的经验,我想知道哪个更好,并且如何在x86_64盒子的集群上提高性能。
MPICH已经存在很长时间了。它非常便携,你可以在网上找到多年的技巧和窍门。这是一个保险的选择,可能与更多MPI程序兼容。
OpenMPI比较新。虽然它不太便携,但它支持最常见的平台非常好。大多数人似乎认为在几个方面它要好得多,特别是在容错性方面 - 但要利用这一点,您可能需要使用一些它独有的特殊功能,这些功能不是MPI标准的一部分。
至于性能,这很大程度上取决于应用程序;很难给出一般性的建议。您应该发布一个关于您想运行的计算类型、节点数量和硬件类型 - 包括您正在使用的网络硬件类型的具体问题。
MPI_Bcast
?我认为两个版本的官方实现目前都不支持“可执行文件分阶段”,即通过mpiexec
将要执行的程序移动到节点。 - Dave Goodell