40-percent faster R without any code changes
Nick Elprin2014-11-06 | 2 min read
Starting today, anyone running R code on Domino can use Revolution R Open, to dramatically improve their performance without any code changes.
Introduction
We had a great conversation last week with the folks from Revolution Analytics to learn more about their new Revolution R Open product (RRO, for short). For those who don't know, RRO is a 100% compatible, drop-in replacement for the stock distribution of R, with several significant performance enhancements. This means it works with all your existing R packages — it just runs your code much faster. And it's open source!
Benchmarks
We installed RRO on in our default Domino environment, so we can easily switch projects over to use RRO instead of stock R. And then we did some benchmarks, using the R-Benchmark-25 script. The results were impressive:
On a single-core machine, RRO was nearly 30% faster than stock R. And on a 4-core machine, RRO was nearly 40% faster. Again, these improvements happened with the exact same R code, and no need to update any packages.
Differences vs Revolution's benchmarks
Revolution has posted some of their own benchmarks on their blog and their website. While our results above seem impressive, Revolution shows a much more significant speedup than what we saw. We haven't investigated this. It's possible that, because they were running on Windows, the Intel MKL support gave them a big boost, whereas since we were running on Linux, we already had a good underlying math library (BLAS) for our stock R installation. Or it's possible we didn't take full advantage of some configuration options. Honestly, we don't know.
RRO Installation
Installation on Ubuntu was simple, following Revolution's own instructions:
wget http://mran.revolutionanalytics.com/install/RRO-8.0-Beta-Ubuntu-14.04.x86_64.tar.gz
tar -zxf RRO-8.0-Beta-Ubuntu-14.04.x86_64.tar.gz
./install.sh# RRO will be installed in '/usr/lib64/RRO-8.0' -- update your $PATH accordingly
RRO on Domino
Domino projects can now optionally be set to use RRO instead of stock R. If you'd like to try it out on your project, just email our help desk to let us know.
Nick Elprin is the CEO and co-founder of Domino Data Lab, provider of the open data science platform that powers model-driven enterprises such as Allstate, Bristol Myers Squibb, Dell and Lockheed Martin. Before starting Domino, Nick built tools for quantitative researchers at Bridgewater, one of the world's largest hedge funds. He has over a decade of experience working with data scientists at advanced enterprises. He holds a BA and MS in computer science from Harvard.
RELATED TAGS