RScaLAPACK: High-Performance Parallel Statistical Computing with R and ScaLAPACK.
Srikanth B. Yoginath, Nagiza F. Samatova, David W. Bauer, Guruprasad H. Kora, George I. Fann, Al Geist · Parallel and Distributed Computing Systems (ISCA) · 2005
With the growing popularity of parallel computation, researchers are looking for various means to reduce the problem solving time by performing the computations in parallel. While, interested in parallel computation they do not want to deal with the parallel programming complexities. In this paper, through RScaLAPACK we demonstrate a means that enables the user to carryout parallel computation without dealing with the intricacies of parallel programming. The name RScaLAPACK is made up of two distinct words, R and ScaLAPACK. The first word stands for the software that provides an environment and a language for statistical computing and graphics. This Open source software has developed rapidly and has been extended by a large collection of packages. The second word ScaLAPACK stands for a library of high-performance linear algebra routines for distributed-memory message passing MIMD computers and networks of work stations supporting PVM and/or MPI. As the name suggests, RScaLAPACK is a library built for the R statistical environment using the ScaLAPACK library. Through RScaLAPACK the user can setup the parallel environment, distribute data and carry out the required parallel computation using a single R function call. While the interface maintains the look and feel of the R system, RScaLAPACK allows carrying out analyses with a performance that scales well with both the problem size and the number of processors. RScaLAPACK is developed using C and FORTRAN languages and is distributed as an add-on library to the R statistical package. It is made available as an Open Source package and can be found at http://www.aspect-sdm.org/Parallel-R or on R’s CRAN web site http://www.r-project.org. In this paper we discuss the design, working and performance characteristics of the RScaLAPACK library.