我需要将非连续数据从一个进程发送到另一个进程的连续位置(使用C编程语言)。我已决定使用MPI派生数据类型,并成功定义它以匹配我需要发送的非连续数据(因此发送派生数据类型)。
我的问题是,当我发送派生数据类型(非连续数据)时,它是否在另一端收到非连续数据?我怎么能让它连续?
我尝试过几件事情,但我甚至不确定这一切是如何运作的,所以我不确定我能否正确地表达我的结果。
是否有人能够详细说明其工作原理,最好是在MPI_Sendrecv()的背景下?
基本思想是将非连续数据发送到连续的位置,实际上发送到同一个数组(仅在另一个进程上)。
谢谢。