R as an integration tool in high performance computing - lessons learned
In this paper we discuss the usage of the statistical software R to integrate software components for large-scale simulations. To this end, we show how to interface different components written in various programming languages under the umbrella of R. We base our study on well-known tools such as COPASI [HSG+06] and connect it to our own R package SOMNIBIEN (Simulation Of Metabolic Networks Influenced By Internal And External Noise). In particular, we show the need to use Fortran code for fast simulation via stochastic differential equations. This implies the need to interface with code in C, while offering the opportunity to leverage the superior analysis capabilities of R and its plotting capabilities. Eventually, our system compiles models defined in an XML-dialect, translates them into C in the background and executes a Fortran solver for stochastic differential equations (SDEs) on them. Furthermore, we present the integration with downloadcapabilities from the XML-based BioModels Database [FH03a]. For the lessons learned, we describe pitfalls and performance bottlenecks and provide guidelines for future work on the integration of different code repositories into one R framework. Finally, we show performance evaluations on multi-core parallelization within our package.
Full Text: PDF