Site icon R-bloggers

Measuring performance of functions in R

[This article was first published on macsci, and kindly contributed to R-bloggers]. (You can report issue about the content on this page here)
Want to share your content on R-bloggers? click here if you have a blog, or here if you don't.
In R you can use the system.time(function) function to test the time it takes to execute a function. Because I had to do some extended performance testing in R, I wrote a new function based on system.time which gives you the possibility to run multiple samples of a function, to increase the reliability of the measurements. The function is called performance, and takes three arguments: the function you want to test, the number of samples (1 by default), and whether garbage collection should be performed before each function run (yes by default).

For instance:

> performance(complex.function(1,5,”goal”), samples=100)

Average time per run:
—————————–
User System Elapsed
0.338 0.014 0.352

Total time for all runs:
————————
User System Elapsed
33.805 1.369 35.212

I included ‘performance’ in my R basic functions (see also Customizing R: startup script).

To leave a comment for the author, please follow the link and comment on their blog: macsci.

R-bloggers.com offers daily e-mail updates about R news and tutorials about learning R and many other topics. Click here if you're looking to post or find an R/data-science job.
Want to share your content on R-bloggers? click here if you have a blog, or here if you don't.