Skip to main content

Latest Tweets

[ECCO] New High-Performance R versions available

Print Friendly, PDF & Email

We've installed high-performance versions of R 3.0.2 (compiled against the Intel Math Kernel Library (MKL) and the AMD Core Math Library (ACML)) on all compute nodes. We may add additional standard R packages in due course. In order to use HPC R on ECCO, users need to use the 'module' command. The following R-related modules are available:

R/3.0.1(default)
R/ACML/3.0.2 
R/ACML/MP/3.0.2 
R/MKL/3.0.2 
R/MKL/MP/3.0.2

Note that by default, 'module load R'  simply "loads"  the already installed R, as provided by the operating system (CentOS 6). You need to explicitly load the MKL or ACML versions of R, if you wish to use them.

There are two versions of HPC-R: the MKL version is optimized for Intel-based compute nodes, whereas the ACML version is optimized for AMD-based compute nodes (see the list of available hardware). At present, there is no resource variable available for qsub in order to request or test for a specific hardware base, however, the following code in a qsub script will achieve the desired goal of loading the appropriate R version:

INTEL=$(grep vendor_id /proc/cpuinfo | grep Intel | head -1)
[[ -z $INTEL ]] && module load R/ACML/3.0.2 || module load R/MKL/3.0.2

The performance improvement of the use of HPC R will depend on your code. The improvements are largely in matrix operations. In tests using R-benchmark-25.R, the use of R-MKL lead to a decrease in the runtime of the benchmark from 79s to 19s, and certain components of the benchmark ran up to 10x faster.

Note that if you are using RStudio using the menu option, it will continue to use standard R.