R is designed to make it easy to clearly express statistical ideas in code, but when it come to writing code that runs as fast as possible, there are a few tips, tricks and caveats to be aware of. As part of the BioConductor conference this past summer, Martin Morgan prepared a tutorial on efficient R programming. (Patrick Abouyen presented the tutorial on the day.) The slides (PDF) include lots of handy guidelines, including:
- Common performance pitfalls, and solutions
- How to measure performance and memory use
- How to work with large data files (handy if you don't have RevoScaleR)
- How to use parallel computing to speed up "embarassingly parallel" jobs (for example, use foreach/doSMP)
There's also a collection of exercises (PDF) you can use to test out your efficient programming skills. Many of the examples come from the Genomics domain (as befits the BioConductor conference), but the advice is relevant to any R user.
BioConductor.org: BioC 2010 Course Materials (see section Efficient R Programming)
Update Sep 28: Corrected spelling of Patrick Abouyen.