codistributor2dbc.defaultWorkerGrid
二维块循环分布式数组的默认计算网格
说明
返回一个向量,定义 grid
= codistributor2dbc.defaultWorkerGridnrow-by-ncol
工作进程的计算网格,使得乘积是当前 spmd
代码块或通信作业中运行的工作进程数量。要获取当前 spmd 代码块中运行的工作进程数量,请使用 spmdSize
函数。codistributor2dbc.defaultWorkerGrid
定义的网格尽可能接近正方形。以下规则定义网格的 nrow
和 ncol
:
如果当前
spmd
代码块中运行的工作进程数量是完全平方数,则nrow = ncol = sqrt(
。spmdSize
)如果当前
spmd
代码块中运行的工作进程数量是 2 的奇数次方,那么nrow = ncol/2 = sqrt(
。spmdSize
/2)nrow <= ncol
.如果当前
spmd
代码块中运行的工作进程数量是素数,则nrow = 1
,ncol =
。spmdSize
nrow
是小于或等于sqrt(
的最大整数,其中spmdSize
)ncol =
也是一个整数。spmdSize
/nrow