gpt4 book ai didi

c - MPI_Type_indexed 内存布局

转载 作者:行者123 更新时间:2023-11-30 15:39:16 26 4
gpt4 key购买 nike

考虑方法MPI_Type_indexed 。我从数组中发送/接收按随机顺序排列的元素。例如,位置为 5、16、102、1001...的元素在设置 MPI 数据类型之前将它们彼此相邻排列会更好吗?

最佳答案

定义“更好”。

它可能会使您的代码更易于维护,因为与设置索引数据类型相比,交换内存中的值并将它们作为单个数组发送可以说更容易,并且更不容易出错。

从性能角度来看,这是完全没有必要的,除非您有太多的值可供选择,以至于它们无法全部放入内存中,并且操作系统必须诉诸分页。即使如此,硬盘驱动器访问可能仍然比网络流量更快,因此与传递消息的固有开销相比,性能增益可能可以忽略不计。我什至没有考虑对数组进行排序的算法开销。当然,一如既往,“如果我做 X 而不是 Y 会更有效率吗?”这个问题的唯一正确答案。是“对两者进行分析并亲自查看”。

简而言之,我不会费心重新排列您的数据,除非您出于某种原因特别希望避免使用派生的 MPI 数据类型。派生数据类型就是针对这种情况创建的。

关于c - MPI_Type_indexed 内存布局,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21516419/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com