行和列索引的MPI约定

时间:2017-09-07 04:18:22

标签: mpi ipc fortran90 contiguous

我正在使用MPI解决PDE问题。为此,我将2D域分解为不同的单元格(每个单元格的大小为“xcell,ycellxcell = size_x_domain/(number of X subdomains)ycell = size_y_domain/(number of Y subdomains)

所以,我正在使用number of processes = (number of X subdomains)*(number of Y subdomains)

运行代码

相对于顺序版本的增益是我在表示子域的每个进程之间进行通信。

这里的图说明我的8个进程的细分(X的2个子域和Y的4个子域):

enter image description here

xs,xe)代表单元格的x_startx_end, (ys,ye)代表单元格的y_starty_end

我想知道是否必须设置x(i,j)数组, i索引为行索引 j为列索引

将第一个索引放在行中,第二个索引放在列中是一般规则吗? (例如,用C,Fortran和Matlab语言或者更多)

感谢您的帮助。

1 个答案:

答案 0 :(得分:-1)

我不确定,但也许可以尝试为所有4个通信设置不同的标志。