Rprof {base} | R Documentation

## Enable Profiling of R's Execution

### Description

Enable or disable profiling of the execution of R expressions.

### Usage

    Rprof(filename = "Rprof.out", append = TRUE, interval = 0.02)

### Arguments

`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.

### Details

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. 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

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).

### Examples

    Rprof()
    ## some code to be profiled
    Rprof(NULL)
    ## some code NOT to be profiled
    Rprof(append=TRUE)
    ## some code to be profiled
    Rprof(NULL)
    ...
    ## Post-process the output by
    ##   R CMD Rprof Rprof.out
    ## at the shell prompt.