Releases

Stable pbdR releases can be found here. We maintain development versions of all of our packages on our GitHub project page. We also try, whenever possible, to maintain releases on the CRAN.

pbdR Packages

Application Specifically purposed packages that utilize pbdR.

Package Description Download Documentation
pbdML Machine learning algorithms, using pbdDMAT. GitHub html
cubfits Codon Usage Bias Fits, using pbdMPI. Estimating mutation and selection coefficients on synonymous codon bias usage based on models of ribosome overhead cost (ROC). Multinomial logistic regression and Markov Chain Monte Carlo are used to estimate and predict protein production rates with/without the presence of expressions and measurement errors. GitHub
CRAN
html
pmclust Tools for parallel model-based clustering. These include k-means and Gaussian mixture modeling, and can be applied to ad hoc distributed matrices as well as pbdDMAT conformable ones. GitHub
CRAN
html
pbdDEMO A collection of pbdR package demonstrations and examples. Also included is a lengthy, textbook-style vignette to help quickly move R programmers from their laptops to distributed platforms. GitHub html

Communication Tools for handling multi-machine communication.

Package Description Download Documentation
pbdRPC Remote Procedure Call. A very light implementation yet secure for remote procedure calls with unified interface via ssh (OpenSSH) or plink/plink.exe (PuTTY). GitHub html
remoter A collection of utilities for performing R computations on a remote resource. With the package, one can use their local R session (and gui of preference, e.g. RStudio) to connect to a remote server instance, and without modifying their code, have it executed on the remote instance. The package is a version of pbdCS with the MPI innards stripped out. GitHub
CRAN
html
pbdCS A client/server framework for pbdR. With this package, one can move from batch SPMD programming to interactivity at thousands of cores. GitHub
pbdZMQ A set of bindings for the well-known ZeroMQ communication library. pbdZMQ greatly eases the burdens of network programming for R users. Additionally, the package serves as a distribution of ZeroMQ, making installation trivial. It serves as the foundation of the remoter and pbdCS packages. GitHub
CRAN
html

Computation Packages frameworks for building other scalable tools.

Package Description Download Documentation
pbdDMAT Distributed matrix classes and methods. The package includes numerous methods for manipulating and reshaping distributed matrices, as well as linear algebra and statistics routines. Through extensive use of R's S4 methods, these functions have identical syntax to serial R. GitHub html
pbdMPI A high-level interface to MPI. The package handles linking issues, as well as offers a very simple R interface for MPI programming. GitHub
CRAN
html

Developers Tools for developers.

Package Description Download Documentation
pbdTEST A testing framework for pbdR. GitHub
pbdBASE Base utilities for distributed matrices. For advanced programmers only. GitHub html
pbdSLAP The Scalable Linear Algebra Package. A distribution of ScaLAPACK, this package greatly simplifies package build and linking issues for distribute matrix programming. GitHub html

I/O Packages for large, scalable I/O.

Package Description Download Documentation
pbdNCDF4 An R package interface to NetCDF version 4. The package adds collective parallel read and write capability to the R package ncdf4 version 1.8. GitHub html

Profiling Performance analysis packages.

Package Description Download Documentation
hpcvis Profiler visualizations. The package offers numerous plotters for data generated by pbdPROF and pbdPAPI. The package is kept separate so as not to include the graphics dependency chain on pbdPAPI and pbdPROF, as these dependencies may not be easily installed on supercomputers. GitHub
pbdPROF MPI profiling tools. The package offers utilities for linking with MPI-using R packages (pbdMPI and Rmpi), as well as tools for parsing profiler output files. fpmpi and mpiP are supported. GitHub html
pbdPAPI Bindings for PAPI. The package offers utilities for measuring and collecting performance counter data, such as number of floating point operations or cache misses. Linux (or FreeBSD with a custom kernel) only. GitHub

Installation Instructions

A combined release of current GitHub and CRAN components of the pbdR project along with an installer became available on March 5, 2018, as pbdR 1.0. This and subsequent versions as a single gzipped tar file are available here.

There are two sets of instructions: one for those who wish to use Docker, and one for those who do not. Under most circumstances, using the Docker builds is much easier. This is a good fit for anyone wishing to use pbdR:

For all other cases, installing the "native" versions will be necessary.

Docker Native
pdf html pdf html