首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >多机MPI_Scatter

多机MPI_Scatter
EN

Stack Overflow用户
提问于 2013-10-30 03:06:37
回答 1查看 292关注 0票数 0

我是MPI的新手,我有点困惑..

我使用"MPI_Scatter“在多个部分中”破坏“一个数组。但情况是..。它能在多台机器上运行程序吗?

我的观点是:我必须使用像MPI_Send和MPI_Rcv这样的东西吗?或者分散可以做到这一点?MPI_Scatter只在一台机器上工作?在这方面找不到任何好的参考资料。

谢谢!

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-10-30 08:46:28

无论MPI进程位于何处,MPI_Scatter都可以工作。它具有相同的效果,就像根进程执行了一个MPI_Send操作循环,而所有其他进程都执行了一个MPI_Recv。事实上,MPI_Scatter通常是在内部使用MPI_SendMPI_Recv实现的,除非网络设备支持某种工作卸载(但最终它又归结为一系列类似于发送和接收的事件)。其对应的MPI_Gather以及MPI中的任何其他集体通信呼叫也是如此。

MPI是一个抽象规范-它只定义了通信实体(级数)与MPI环境( API)的交互方式以及这种交互的结果。它不在乎排名是否是同一节点上的进程,或者它们是否运行在大规模并行超级计算机上,也不在乎它们是否在全球范围内通过互联网进行通信。这最好在MPI规范的以下摘录中描述:

消息传递范式的吸引力至少部分源于其广泛的可移植性。以这种方式表达的程序可以在分布式内存多处理器、工作站网络以及所有这些的组合上运行。此外,共享内存实现(包括多核处理器和混合体系结构的实现)也是可能的.这种模式不会因为将共享和分布式内存视图结合起来的体系结构而过时,也不会因为网络速度的提高而过时。因此,在各种各样的机器上实现这一标准应该是可能的,也是有用的,包括那些由由通信网络连接的其他机器的集合组成的“机器”,这些机器是并行的还是不平行的。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/19673116

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档