Difference between revisions of "R"

From UFRC
Jump to navigation Jump to search
Line 200: Line 200:
 
WRITE CITATION HERE
 
WRITE CITATION HERE
 
|}}
 
|}}
 +
 +
<code>
 +
# Load the R MPI package if it is not already loaded.
 +
if (!is.loaded("mpi_initialize")) {
 +
    library("Rmpi")
 +
    }
 +
                                                                               
 +
# Spawn as many slaves as possible
 +
mpi.spawn.Rslaves()
 +
                                                                               
 +
# In case R exits unexpectedly, have it automatically clean up
 +
# resources taken up by Rmpi (slaves, memory, etc...)
 +
.Last <- function(){
 +
    if (is.loaded("mpi_initialize")){
 +
        if (mpi.comm.size(1) > 0){
 +
            print("Please use mpi.close.Rslaves() to close slaves.")
 +
            mpi.close.Rslaves()
 +
        }
 +
        print("Please use mpi.quit() to quit R")
 +
        .Call("mpi_finalize")
 +
    }
 +
}
 +
 +
# Tell all slaves to return a message identifying themselves
 +
mpi.remote.exec(paste("I am",mpi.comm.rank(),"of",mpi.comm.size()))
 +
 +
# Tell all slaves to close down, and exit the program
 +
mpi.close.Rslaves()
 +
mpi.quit()
 +
</code>

Revision as of 16:27, 29 March 2012

Description

{{{name}}} website  
R is a free software environment for statistical computing and graphics. Template:App Location

Available versions

Note: File a support ticket to request installation of additional libraries.

  • 2.13.1
  • 2.14.1
  • 2.14.1-mpi - R base package MPI-enabled via the Rmpi library.
  • 2.14.2 (default)

Running the application using modules

To use R with the environment modules system at HPC the following commands are available:

Get module information for r:

$module spider R

Load the default application module:

$module load R

The modulefile for this software adds the directory with executable files to the shell execution PATH and sets the following environment variables:

  • HPC_R_DIR - directory where R is located.
  • HPC_R_BIN - executable directory
  • HPC_R_LIB - library directory
  • HPC_R_INCLUDE - includes directory

To use the version of R built for parallel execution with MPI via the Rmpi library load the following modules:

module load intel/11.1 openmpi/1.4.3 R

Installed Packages

Note: Many of the packages in the R library shown below are installed as a part of Bioconductor meta-library. The list is generated from the default R version.

affy                    Methods for Affymetrix Oligonucleotide Arrays
affydata                Affymetrix Data for Demonstration Purpose
affyio                  Tools for parsing Affymetrix data files
affyPLM                 Methods for fitting probe-level models
affyQCReport            QC Report Generation for affyBatch objects
akima                   Interpolation of irregularly spaced data
annaffy                 Annotation tools for Affymetrix biological
                        metadata
annotate                Annotation for microarrays
AnnotationDbi           Annotation Database Interface
ape                     Analyses of Phylogenetics and Evolution
base                    The R Base Package
baySeq                  Empirical Bayesian analysis of patterns of
                        differential expression in count data
Biobase                 Biobase: Base functions for Bioconductor
BiocInstaller           Install/Update Bioconductor and CRAN Packages
Biostrings              String objects representing biological
                        sequences, and matching algorithms
bitops                  Functions for Bitwise operations
boot                    Bootstrap Functions (originally by Angelo Canty
                        for S)
class                   Functions for Classification
cluster                 Cluster Analysis Extended Rousseeuw et al.
CNVtools                A package to test genetic association with CNV
                        data
codetools               Code Analysis Tools for R
colorspace              Color Space Manipulation
compiler                The R Compiler Package
datasets                The R Datasets Package
DBI                     R Database Interface
DESeq                   Differential gene expression analysis based on
                        the negative binomial distribution
dichromat               Color schemes for dichromats
digest                  Create cryptographic hash digests of R objects
DynDoc                  Dynamic document tools
edgeR                   Empirical analysis of digital gene expression
                        data in R
foreign                 Read Data Stored by Minitab, S, SAS, SPSS,
                        Stata, Systat, dBase, ...
gcrma                   Background Adjustment Using Sequence
                        Information
gee                     Generalized Estimation Equation solver
geiger                  Analysis of evolutionary diversification
genefilter              genefilter: methods for filtering genes from
                        microarray experiments
geneplotter             Graphics related functions for Bioconductor
GenomicRanges           Representation and manipulation of genomic
                        intervals
ggplot2                 An implementation of the Grammar of Graphics
glmmADMB                Generalized Linear Mixed Models Using AD Model
                        Builder
GO.db                   A set of annotation maps describing the entire
                        Gene Ontology
graphics                The R Graphics Package
grDevices               The R Graphics Devices and Support for Colours
                        and Fonts
grid                    The Grid Graphics Package
hgu95av2.db             Affymetrix Human Genome U95 Set annotation data
                        (chip hgu95av2)
HilbertVis              Hilbert curve visualization
Hmisc                   Harrell Miscellaneous
IRanges                 Infrastructure for manipulating intervals on
                        sequences
iterators               Iterator construct for R
itertools               Iterator Tools
KEGG.db                 A set of annotation maps for KEGG
KernSmooth              Functions for kernel smoothing for Wand & Jones
                        (1995)
lattice                 Lattice Graphics
leaps                   regression subset selection
limma                   Linear Models for Microarray Data
locfit                  Local Regression, Likelihood and Density
                        Estimation.
marray                  Exploratory analysis for two-color spotted
                        microarray data
MASS                    Support Functions and Datasets for Venables and
                        Ripley's MASS
Matrix                  Sparse and Dense Matrix Classes and Methods
memoise                 Memoise functions
methods                 Formal Methods and Classes
mgcv                    GAMs with GCV/AIC/REML smoothness estimation
                        and GAMMs by PQL
msm                     Multi-state Markov and hidden Markov models in
                        continuous time
multtest                Resampling-based multiple hypothesis testing
munsell                 Munsell colour system
mvtnorm                 Multivariate Normal and t Distributions
nlme                    Linear and Nonlinear Mixed Effects Models
nnet                    Feed-forward Neural Networks and Multinomial
                        Log-Linear Models
org.Hs.eg.db            Genome wide annotation for Human
ouch                    Ornstein-Uhlenbeck models for phylogenetic
                        comparative hypotheses
parallel                Support for Parallel computation in R
plyr                    Tools for splitting, applying and combining
                        data
preprocessCore          A collection of pre-processing functions
proto                   Prototype object-based programming
R2admb                  ADMB to R interface functions
RColorBrewer            ColorBrewer palettes
reshape2                Flexibly reshape data: a reboot of the reshape
                        package.
rpart                   Recursive Partitioning
RSQLite                 SQLite interface for R
Rwave                   Time-Frequency analysis of 1-D signals
scales                  Scale functions for graphics.
simpleaffy              Very simple high level analysis of Affymetrix
                        data
spatial                 Functions for Kriging and Point Pattern
                        Analysis
splines                 Regression Spline Functions and Classes
statmod                 Statistical Modeling
stats                   The R Stats Package
stats4                  Statistical Functions using S4 Classes
stringr                 Make it easier to work with strings.
subplex                 Subplex optimization algorithm
survival                Survival analysis, including penalised
                        likelihood.
tcltk                   Tcl/Tk Interface
tools                   Tools for Package Development
utils                   The R Utils Package
vsn                     Variance stabilization and calibration for
                        microarray data
waveslim                Basic wavelet routines for one-, two- and
                        three-dimensional signal processing
wavethresh              Wavelets statistics and transforms.
XML                     Tools for parsing and generating XML within R
                        and S-Plus.
xtable                  Export tables to LaTeX or HTML
zlibbioc                An R packaged zlib-1.2.5





  1. Load the R MPI package if it is not already loaded.

if (!is.loaded("mpi_initialize")) {

   library("Rmpi")
   }
                                                                               
  1. Spawn as many slaves as possible

mpi.spawn.Rslaves()

  1. In case R exits unexpectedly, have it automatically clean up
  2. resources taken up by Rmpi (slaves, memory, etc...)

.Last <- function(){

   if (is.loaded("mpi_initialize")){
       if (mpi.comm.size(1) > 0){
           print("Please use mpi.close.Rslaves() to close slaves.")
           mpi.close.Rslaves()
       }
       print("Please use mpi.quit() to quit R")
       .Call("mpi_finalize")
   }

}

  1. Tell all slaves to return a message identifying themselves

mpi.remote.exec(paste("I am",mpi.comm.rank(),"of",mpi.comm.size()))

  1. Tell all slaves to close down, and exit the program

mpi.close.Rslaves() mpi.quit()