主要内容

codistributed.build

从分布式数据创建协同分布式数组

语法

D = codistributed.build (L, codist)
D = codistributed.build (L, codist noCommunication)

描述

D = codistributed.build (L, codist)组成一个协分布数组getLocalPart (D) = L.codistributed数组D创建时就好像已经组合了本地数组的所有副本l.分配方案由codist.全局错误检查确保本地部件符合指定的分配方案。有关构造协分发器对象的信息,请参阅参考页codistributor1dcodistributor2dbc

D = codistributed.build (L, codist noCommunication)构建一个协作分布式数组,而不执行任何工人间通信以进行错误检查。

codist必须完整,您可以打电话查一下吗codist.isComplete ().对局部零件尺寸和结构的要求l取决于班级codist.对于1-D和2-D块循环协分销商,l所有工人必须具有相同的阶级和稀疏性。而且,局部部分L必须表示为globalIndices方法codist

例子

创建一个大小为1001-by-1001的协分布数组2包含值2

spmdN = 1001;globalSize = (N, N);将矩阵分布在第2维(列)上,,并让协分布器从%全球大小。codistr = codistributor1d (2...codistributor1d.unsetPartition globalSize)%在4个worker上,codistr。分区=[251250250250]。%为本地部分分配存储空间。localSize = [N, codist . partition (labindex)];L = 0 (localSize);%使用globalIndices来映射列的索引%的本地部分进入全局列索引。globalInd = codistr.globalIndices (2);%在4个工人上,globalInd有以下值:worker 1上的% 1:251% 252:501 on worker 2% 502:751 on worker 3% 752:1001对工人4将本地部分的列初始化为%正确的值。localCol = 1:length(globalInd)L (:, localCol) = globalCol;结束D = codistributed.build (L, codistr)结束
介绍了R2009b