[R-SIG-Finance] Running R as a server or in a cluster

Brian G. Peterson brian at braverock.com
Wed Sep 26 14:40:35 CEST 2007


Ryan Sheftel wrote:
> "There are also many methods available to make R run as
> a server process listening on a socket or on a cluster. It would be
> incorrect to simply classify R as a single-threaded application.  There
> is, as Ryan points out, programming effort involved to work in a
> clustered or multi-core environment, and wrapping R/DCOM with an
> event-based language is one approach to achieving this, but not the only
> one."
> 
> Can you share your favorite method? I would be interested to learn as 
> this is a problem we are facing. If it is proprietary of involved I 
> understand.

I believe in sharing "generally useful" approaches (and code).  Trading 
models are, of course, proprietary. ;)

Several groups I know make extensive use of the Rserve package
http://cran.r-project.org/src/contrib/Descriptions/Rserve.html
The Rserve model fits in well with integration to some other programming 
language that would drive the interactions and fire off requests to some 
large server.

There is also R.rsp for ASP/JSP like programming:
http://cran.r-project.org/src/contrib/Descriptions/R.rsp.html

One of the simplest approaches to clustering is to use the snow library:

http://cran.r-project.org/src/contrib/Descriptions/snow.html

Since this doesn't require a formal cluster.

Dirk's Quantian project installs the Mosix cluster and R by default.

For true grid/cluster integration, the most advanced set of features I'm 
aware of is offered by the various Parallel-R libraries, which are used 
extensively in scientific computing clusters:

http://rss.acs.unt.edu/Rdoc/library/taskPR/html/00Index.html

Perhaps others on the list will fill us in on approaches I've missed.

Regards,

   - Brian



More information about the R-SIG-Finance mailing list