首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >MPI RMA为多维数组中的重影单元创建窗口

MPI RMA为多维数组中的重影单元创建窗口
EN

Stack Overflow用户
提问于 2013-11-08 03:05:51
回答 1查看 269关注 0票数 1

如果我有一个数组A100100,我如何为6个边缘子数组(重影单元)创建一个远程内存访问窗口,特别是对于A和A100。在MPI-1中,我创建了一个向量类型来发送/接收重影单元。在MPI-2和MPI -3中,我需要公开整个数组还是只公开重影单元?当然,如果可能的话,后者会更好。

EN

回答 1

Stack Overflow用户

发布于 2013-11-08 05:37:55

MPI RMA窗口是内存中的连续区域,出于性能原因,实现可能需要专门使用MPI_ALLOC_MEM来分配它们。3-D阵列6个边中的4个边界单元在内存中不是连续的。某些实现还可能要求窗口在页面或其他类型的边界上开始对齐。因此,您必须注册一个跨越整个数组的窗口。

虽然在技术上可以为A和A99公开两个单独的窗口,并且这些窗口不会公开数组的任何其他部分,但对于A、A等来说,这是不可能的,因为它们具有不连续的字符。

我建议您使用MPI_ALLOC_MEM分配A (如果使用C/C++编程,则使用MPI_Alloc_mem )。然后,您可以在MPI_GETMPI_PUT中使用适当的矢量类型,以便轻松访问远程光环单元以及要复制的本地单元。

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

https://stackoverflow.com/questions/19844483

复制
相关文章

相似问题

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