Package: pbdMPI 0.5-2

Wei-Chen Chen

pbdMPI: R Interface to MPI for HPC Clusters (Programming with Big Data Project)

A simplified, efficient, interface to MPI for HPC clusters. It is a derivation and rethinking of the Rmpi package. pbdMPI embraces the prevalent parallel programming style on HPC clusters. Beyond the interface, a collection of functions for global work with distributed data and resource-independent RNG reproducibility is included. It is based on S4 classes and methods.

Authors:Wei-Chen Chen [aut, cre], George Ostrouchov [aut], Drew Schmidt [aut], Pragneshkumar Patel [aut], Hao Yu [aut], Christian Heckendorf [ctb], Brian Ripley [ctb], R Core team [ctb], Sebastien Lamy de la Chapelle [aut]

pbdMPI_0.5-2.tar.gz
pbdMPI_0.5-2.tar.gz(r-4.5-noble)pbdMPI_0.5-2.tar.gz(r-4.4-noble)
pbdMPI.pdf |pbdMPI.html
pbdMPI/json (API)

# Install 'pbdMPI' in R:
install.packages('pbdMPI', repos = c('https://cran.r-universe.dev', 'https://cloud.r-project.org'))

Peer review:

Bug tracker:https://github.com/snoweye/pbdmpi/issues

Uses libs:
  • openmpi– High performance message passing library

openmpi

4.26 score 3 packages 181 scripts 710 downloads 2 mentions 258 exports 1 dependencies

Last updated 3 months agofrom:b986e9b7c2. Checks:OK: 1. Indexed: no.

TargetResultDate
Doc / VignettesOKDec 12 2024

Exports:.mpiopt_initaddr.mpi.comm.ptrallgatherallreduceanysourceanytagarrange.mpi.aptsbarrierbcastcomm.abortcomm.acceptcomm.allcomm.allcommoncomm.allcommon.integercomm.allpairscomm.anycomm.as.gbdcomm.balance.infocomm.c2fcomm.catcomm.chunkcomm.connectcomm.disconnectcomm.distcomm.dist.commoncomm.dist.gbdcomm.dupcomm.end.seedcomm.freecomm.get.streamscomm.is.nullcomm.lengthcomm.load.balancecomm.localrankcomm.match.argcomm.maxcomm.meancomm.mincomm.pairwisecomm.pairwise.commoncomm.pairwise.gbdcomm.printcomm.rangecomm.rankcomm.read.csvcomm.read.csv2comm.read.tablecomm.reset.seedcomm.Rprofcomm.sdcomm.seed.statecomm.set.errhandlercomm.set.seedcomm.set.streamcomm.sizecomm.sortcomm.sort.defaultcomm.sort.doublecomm.sort.integercomm.splitcomm.stopcomm.stopifnotcomm.sumcomm.timercomm.unload.balancecomm.varcomm.warningcomm.warningscomm.whichcomm.which.maxcomm.which.mincomm.writecomm.write.csvcomm.write.csv2comm.write.tableexecmpifinalizegatherget.confget.jidget.libget.mpi.comm.ptrget.sourcetagget.sysenvinfo.c2finfo.createinfo.freeinfo.setinitintercomm.createintercomm.mergeiprobeirecvis.comm.nullis.finalizedisendpbd_optpbdApplypbdLapplypbdSapplyport.closeport.openproberecvreducerunmpiscattersendsendrecvsendrecv.replaceserv.lookupserv.publishserv.unpublishspmd.allcheck.typespmd.allgather.arrayspmd.allgather.defaultspmd.allgather.doublespmd.allgather.integerspmd.allgather.objectspmd.allgather.rawspmd.allgatherv.defaultspmd.allgatherv.doublespmd.allgatherv.integerspmd.allgatherv.rawspmd.allreduce.arrayspmd.allreduce.defaultspmd.allreduce.doublespmd.allreduce.floatspmd.allreduce.float32spmd.allreduce.integerspmd.allreduce.logicalspmd.allreduce.objectspmd.alltoall.doublespmd.alltoall.integerspmd.alltoall.rawspmd.alltoallv.doublespmd.alltoallv.integerspmd.alltoallv.rawspmd.anysourcespmd.anytagspmd.barrierspmd.bcast.arrayspmd.bcast.defaultspmd.bcast.doublespmd.bcast.integerspmd.bcast.messagespmd.bcast.objectspmd.bcast.rawspmd.bcast.stringspmd.check.type.recvspmd.check.type.sendspmd.comm.abortspmd.comm.acceptspmd.comm.c2fspmd.comm.catspmd.comm.connectspmd.comm.disconnectspmd.comm.dupspmd.comm.freespmd.comm.get.parentspmd.comm.is.nullspmd.comm.localrankspmd.comm.printspmd.comm.rankspmd.comm.set.errhandlerspmd.comm.sizespmd.comm.spawnspmd.comm.splitSPMD.CTSPMD.DTspmd.finalizespmd.gather.arrayspmd.gather.defaultspmd.gather.doublespmd.gather.integerspmd.gather.objectspmd.gather.rawspmd.gatherv.defaultspmd.gatherv.doublespmd.gatherv.integerspmd.gatherv.rawspmd.get.countspmd.get.processor.namespmd.get.sourcetagspmd.hostinfospmd.info.c2fspmd.info.createspmd.info.freespmd.info.setspmd.initspmd.intercomm.createspmd.intercomm.mergeSPMD.IOspmd.iprobespmd.irecv.defaultspmd.irecv.doublespmd.irecv.integerspmd.irecv.rawspmd.is.comm.nullspmd.is.finalizedspmd.is.managerspmd.isend.defaultspmd.isend.doublespmd.isend.integerspmd.isend.rawSPMD.OPspmd.port.closespmd.port.openspmd.probespmd.recv.defaultspmd.recv.doublespmd.recv.integerspmd.recv.rawspmd.reduce.arrayspmd.reduce.defaultspmd.reduce.doublespmd.reduce.floatspmd.reduce.float32spmd.reduce.integerspmd.reduce.logicalspmd.reduce.objectspmd.scatter.arrayspmd.scatter.defaultspmd.scatter.doublespmd.scatter.integerspmd.scatter.objectspmd.scatter.rawspmd.scatterv.defaultspmd.scatterv.doublespmd.scatterv.integerspmd.scatterv.rawspmd.send.defaultspmd.send.doublespmd.send.integerspmd.send.rawspmd.sendrecv.defaultspmd.sendrecv.doublespmd.sendrecv.integerspmd.sendrecv.rawspmd.sendrecv.replace.defaultspmd.sendrecv.replace.doublespmd.sendrecv.replace.integerspmd.sendrecv.replace.rawspmd.serv.lookupspmd.serv.publishspmd.serv.unpublishSPMD.TPspmd.waitspmd.waitallspmd.waitanyspmd.waitsometask.pulltask.pull.managertask.pull.workerswaitwaitallwaitanywaitsome

Dependencies:float

pbdMPI-guide

Rendered frompbdMPI-guide.Rnwusingutils::Sweaveon Dec 12 2024.

Last update: 2016-12-18
Started: 2013-07-04

Readme and manuals

Help Manual

Help pageTopics
R Interface to MPI (Programming with Big Data in R Project)pbdMPI-package pbdMPI
All Ranks Gather Objects from Every Rankallgather allgather,ANY,ANY,integer-method allgather,ANY,missing,integer-method allgather,ANY,missing,missing-method allgather,integer,integer,integer-method allgather,integer,integer,missing-method allgather,numeric,numeric,integer-method allgather,numeric,numeric,missing-method allgather,raw,raw,integer-method allgather,raw,raw,missing-method allgather-methods allgatherv
All Ranks Receive a Reduction of Objects from Every Rankallreduce allreduce,ANY,missing-method allreduce,float32,float32-method allreduce,integer,integer-method allreduce,logical,logical-method allreduce,numeric,numeric-method allreduce-method
All to Allalltoall spmd.alltoall.double spmd.alltoall.integer spmd.alltoall.raw spmd.alltoallv.double spmd.alltoallv.integer spmd.alltoallv.raw
Parallel Apply and Lapply FunctionspbdApply pbdLapply pbdSapply
A Rank Broadcast an Object to Every Rankbcast bcast,ANY-method bcast,integer-method bcast,numeric-method bcast,raw-method bcast-method
comm.chunkcomm.chunk
Communicator Functionsbarrier comm.abort comm.accept comm.c2f comm.connect comm.disconnect comm.dup comm.free comm.is.null comm.localrank comm.rank comm.size comm.split finalize init intercomm.create intercomm.merge is.finalized port.close port.open serv.lookup serv.publish serv.unpublish
A Rank Gathers Objects from Every Rankgather gather,ANY,ANY,integer-method gather,ANY,missing,integer-method gather,ANY,missing,missing-method gather,integer,integer,integer-method gather,integer,integer,missing-method gather,numeric,numeric,integer-method gather,numeric,numeric,missing-method gather,raw,raw,integer-method gather,raw,raw,missing-method gather-methods gatherv
Functions to Get MPI and/or pbdMPI Configures Used at Compiling Timeget.conf get.lib get.sysenv
Divide Job ID by Ranksget.jid
Global All Pairscomm.allpairs
Global Any and All Functionscomm.all comm.allcommon comm.any
Global As GBD Functioncomm.as.gbd
Global Balance Functionscomm.balance.info comm.load.balance comm.unload.balance
Global Base Functionscomm.length comm.mean comm.sd comm.sum comm.var
Global Distance for Distributed Matricescomm.dist
Global Argument Matchingcomm.match.arg
Global Pairwise Evaluationscomm.pairwise
Global Print and Cat Functionscomm.cat comm.print
Global Range, Max, and Min Functionscomm.max comm.min comm.range
Global Reading Functionscomm.read.csv comm.read.csv2 comm.read.table
A Rprof Function for SPMD Routinescomm.Rprof
Global Quick Sort for Distributed Vectors or Matricescomm.sort
Global Stop and Warning Functionscomm.stop comm.stopifnot comm.warning comm.warnings
A Timing Function for SPMD Routinescomm.timer
Global Which Functionscomm.which comm.which.max comm.which.min
Global Writing Functionscomm.write comm.write.csv comm.write.csv2 comm.write.table
Info Functionsinfo.c2f info.create info.free info.set
A Rank Receives (Nonblocking) an Object from the Other Rankirecv irecv,ANY-method irecv,integer-method irecv,numeric-method irecv,raw-method irecv-method
Check if a MPI_COMM_NULLis.comm.null
A Rank Send (Nonblocking) an Object to the Other Rankisend isend,ANY-method isend,integer-method isend,numeric-method isend,raw-method isend-method
Set or Get MPI Array Pointers in Rarrange.mpi.apts
Functions for Get/Print MPI_COMM Pointer (Address)addr.mpi.comm.ptr get.mpi.comm.ptr
Probe Functionsiprobe probe
A Rank Receives (Blocking) an Object from the Other Rankrecv recv,ANY-method recv,integer-method recv,numeric-method recv,raw-method recv-method
A Rank Receive a Reduction of Objects from Every Rankreduce reduce,ANY,missing-method reduce,float32,float32-method reduce,integer,integer-method reduce,logical,logical-method reduce,numeric,numeric-method reduce-method
A Rank Scatter Objects to Every Rankscatter scatter,ANY,ANY,integer-method scatter,ANY,missing,integer-method scatter,ANY,missing,missing-method scatter,integer,integer,integer-method scatter,integer,integer,missing-method scatter,numeric,numeric,integer-method scatter,numeric,numeric,missing-method scatter,raw,raw,integer-method scatter,raw,raw,missing-method scatter-method
Parallel random number generation with reproducible resultscomm.end.seed comm.get.streams comm.reset.seed comm.seed.state comm.set.seed comm.set.stream
A Rank Send (blocking) an Object to the Other Ranksend send,ANY-method send,integer-method send,numeric-method send,raw-method send-method
Send and Receive an Object to and from Other Rankssendrecv sendrecv,ANY,ANY-method sendrecv,integer,integer-method sendrecv,numeric,numeric-method sendrecv,raw,raw-method sendrecv-method
Send and Receive an Object to and from Other Rankssendrecv.replace sendrecv.replace,ANY-method sendrecv.replace,integer-method sendrecv.replace,numeric-method sendrecv.replace,raw-method sendrecv.replace-method
Set Global pbdR Optionspbd_opt
Functions to Obtain source and taganysource anytag get.sourcetag
Default control in pbdMPI..pbd_env
Sets of controls in pbdMPI..mpiopt_init SPMD.CT SPMD.DT SPMD.IO SPMD.OP SPMD.TP
Functions for Task Pull Parallelismtask.pull task.pull.manager task.pull.workers
Execute MPI code in systemexecmpi runmpi
Wait Functionswait waitall waitany waitsome