Starting today, anyone running R code on Domino can use Revolution R Open, to dramatically improve their performance without any code changes.
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!
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.
Installation on Ubuntu was simple, following Revolution's own instructions:
tar -zxf RRO-8.0-Beta-Ubuntu-14.04.x86_64.tar.gz
# 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.
New to Domino? Consider a Guided Tour.Watch a Demo of Domino
Recent PostsTransformers - Self-Attention to the rescue How data science can fail faster to leap ahead N-shot and Zero-shot learning with Python A Hands-on Tutorial for Transfer Learning in Python Getting started with k-means clustering in Python Feature extraction and image classification using Deep Neural Networks and OpenCV Getting Started with OpenCV Speeding up Machine Learning with parallel C/C++ code execution via Spark Semi-uniform strategies for solving K-armed bandits Polars - A lightning fast DataFrames library
Other posts you might be interested in
Subscribe to the Data Science Blog
Receive data science tips and tutorials from leading Data Scientists right to your inbox.