Create codistributed sparse array of uniformly distributed pseudo-random values
CS = codistributed.sprandn(m,n,density)
CS = sprandn(n,codist)
CS = codistributed.sprandn(m,n,density)
creates an
m
-by-n
sparse codistributed array with
approximately density*m*n
normally distributed nonzero double
entries.
Optional arguments to codistributed.sprandn
must be specified
after the required arguments, and in the following order:
codist
— A codistributor object specifying the
distribution scheme of the resulting array. If omitted, the array is
distributed using the default distribution scheme. For information on
constructing codistributor objects, see the reference pages for codistributor1d
and
codistributor2dbc
.
'noCommunication'
— Specifies that no
interworker communication is to be performed when constructing the array,
skipping some error checking steps.
CS = sprandn(n,codist)
is the same as CS =
codistributed.sprandn(n, codist)
. You can also use the optional
arguments with this syntax. To use the default distribution scheme, specify a
codistributor constructor without arguments. For example:
spmd CS = codistributed.sprandn(8,8,0.2,codistributor1d()); end
With four workers,
spmd(4) CS = codistributed.sprandn(1000,1000,0.001); end
creates a 1000-by-1000 sparse codistributed double array CS
with approximately 1000 nonzeros. CS
is distributed by its second
dimension (columns), and each worker contains a 1000-by-250 local piece of
CS
.
spmd(4) codist = codistributor1d(2,1:numlabs); CS = sprandn(10,10,0.1,codist); end
creates a 10-by-10 codistributed double array CS
with
approximately 10 nonzeros. CS
is distributed by its columns, and
each worker contains a 10-by-labindex
local piece of
CS
.
When you use sprandn
on the workers in the parallel pool, or in
an independent or communicating job, each worker sets its random generator seed to a
value that depends only on the labindex
or task ID. Therefore,
the array on each worker is unique for that job. However, if you repeat the job, you
get the same random data.
codistributed.speye
| codistributed.sprand
| distributed.sprandn
| rand
| randn
| sparse
| sprandn