Description Usage Arguments Value Examples
Redistribute a matrix from rank 0 to all ranks in block cyclic fashion.
1 | base.redist(desc, A)
|
desc |
ScaLAPACK descriptor array. |
A |
Matrix. |
A block cyclic matrix of the input matrix A from rank 0.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 | spmd.code <- "
suppressMessages(library(pbdMPI))
suppressMessages(library(pbdBASE))
init.grid()
### Set data matrix A and desc.
A <- matrix(as.double(1:30), nrow = 6, ncol = 5)
if (comm.rank() != 0)
A <- matrix(as.double(0), nrow = 6, ncol = 5)
dim <- dim(A)
bldim <- c(3L, 3L)
ldim <- base.numroc(dim = dim, bldim = bldim)
desc <- base.descinit(dim = dim, bldim = bldim, ldim = ldim)
### Redistribute from rank 0.
dA <- base.redist(desc, A)
comm.print(dA, all.rank = TRUE)
finalize()
"
pbdMPI::execmpi(spmd.code = spmd.code, nranks = 2L)
|
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.