Distributed colon operation
codistributed.colon(a,d,b)
codistributed.colon(a,b)
codistributed.colon(___,codist)
codistributed.colon(___,'noCommunication')
codistributed.colon(___,codist,'noCommunication')
codistributed.colon(a,d,b)
partitions the vector
a:d:b
into numlabs
contiguous subvectors of
equal, or nearly equal length, and creates a codistributed array whose local portion
on each worker is the labindex
-th subvector.
codistributed.colon(a,b)
uses d = 1
.
Optional arguments to codistributed.colon
must be specified
after the required arguments, and in the following order:
codistributed.colon(___,codist)
uses the
codistributor object codist
to specify the distribution scheme of
the resulting vector. If omitted, the result is distributed using the default
distribution scheme. For information on constructing codistributor objects, see the
reference pages for codistributor1d
and codistributor2dbc
.
codistributed.colon(___,'noCommunication')
or
codistributed.colon(___,codist,'noCommunication')
specifies that no communication is to be performed when constructing the vector,
skipping some error checking steps.
Partition the vector 1:10
into four subvectors among four
workers.
spmd(4); C = codistributed.colon(1,10), end
Lab 1: This worker stores C(1:3). LocalPart: [1 2 3] Codistributor: [1x1 codistributor1d] Lab 2: This worker stores C(4:6). LocalPart: [4 5 6] Codistributor: [1x1 codistributor1d] Lab 3: This worker stores C(7:8). LocalPart: [7 8] Codistributor: [1x1 codistributor1d] Lab 4: This worker stores C(9:10). LocalPart: [9 10] Codistributor: [1x1 codistributor1d]