Rprof {utils}R Documentation

Enable Profiling of R's Execution


Enable or disable profiling of the execution of R expressions.


Rprof(filename = "Rprof.out", append = FALSE, interval = 0.02,


filename The file to be used for recording the profiling results. Set to NULL or "" to disable profiling.
append logical: should the file be over-written or appended to?
interval real: time interval between samples.
memory.profiling logical: write memory use information to the file?


Enabling profiling automatically disables any existing profiling to another or the same file.

Profiling works by writing out the call stack every interval seconds, to the file specified. Either the summaryRprof function or the Perl script R CMD Rprof can be used to process the output file to produce a summary of the usage; use R CMD Rprof --help for usage information.

Note that the timing interval cannot be too small: once the timer goes off, the information is not recorded until the next clock tick (probably every 10msecs). Thus the interval is rounded to the nearest integer number of clock ticks, and is made to be at least one clock tick (at which resolution the total time spent is liable to be underestimated).


Profiling is not available on all platforms. By default, it is attempted to compile support for profiling. Configure R with --disable-R-profiling to change this.

As R profiling uses the same mechanisms as C profiling, the two cannot be used together, so do not use Rprof in an executable built for profiling.

See Also

The chapter on “Tidying and profiling R code” in “Writing R Extensions” (see the ‘doc/manual’ subdirectory of the R source tree).


tracemem, Rprofmem for other ways to track memory use.


## Not run: 
## some code to be profiled
## some code NOT to be profiled
## some code to be profiled
## Now post-process the output as described in Details
## End(Not run)

[Package utils version 2.5.0 Index]