加速应用程序的常用方法是使用MPI或更高级别的库(如使用MPI下的PETSc)来并行化应用程序。MPI + CUDA在纯MPI上的优势是什么?
不过现在大家似乎都有兴趣使用CUDA来并行化他们的应用程序,或者使用MPI和CUDA的混合来处理更大的问题。
在使用混合MPI + CUDA编程模型而不是传统的经过验证的MPI并行编程模型中,是否有任何明显的优势?我特别要求在粒子方法的应用领域
为什么我问这个问题的一个原因是,在网络上的任何地方我都看到了“粒子方法自然地映射到GPU的体系结构”或者这个。但是,他们似乎从来没有证明为什么我会更好地使用CUDA而不是使用MPI来完成同一项工作。
因为那么你可以在GPU上运行它,并且它们的吞吐量比CPU的集群更低。 – harold