Learn R Programming

pbdDEMO (version 0.2-0)

gbd_dmat: GBD Matrix to Distributed Dense Matrix and vice versa

Description

This function convert a GBD matrix and a distributed dense matrix.

Usage

gbd2dmat(X.gbd, skip.balance = FALSE, comm = .SPMD.CT$comm,
            gbd.major = .DEMO.CT$gbd.major, bldim = .DEMO.CT$bldim, 
            ICTXT = .DEMO.CT$ictxt)
  dmat2gbd(X.dmat, bal.info = NULL, comm = .SPMD.CT$comm, 
            gbd.major = .DEMO.CT$gbd.major)

Arguments

X.gbd
a GBD matrix.
skip.balance
if load.balance were skipped.
comm
a communicator number.
bldim
the blocking dimension for block-cyclically distributing the matrix across the process grid.
gbd.major
1 for row-major storage, 2 for column-major.
ICTXT
BLACS context number for return.
X.dmat
a ddmatrix matrix.
bal.info
a returned object from balance.info.

Value

  • gbd2dmat returns a ddmatrix object. dmat2gbd returns a (balanced) gbd matrix.

Details

X.gbd is a matrix with dimension N.gbd * p and exists on all processors. N.gbd may be vary across processors.

If skip.balance = TRUE, then load.balance will not be called and X.gbd is preassumed to be balanced.

For demonstration purpose, these objects should not contains weird values such as NA.

dmat2gbd is supposed returned a balanced gbd matrix if bal.info is not supplied.

References

Programming with Big Data in R Website: http://r-pbd.org/

Examples

Run this code
### Under command mode, run the demo with 4 processors by
### (Use Rscript.exe for windows system)
mpiexec -np 4 Rscript -e "demo(gbd_dmat,'pbdDEMO',ask=F,echo=F)"

Run the code above in your browser using DataLab