system.time               package:base               R Documentation

CPU Time Used

Description:

     Return CPU (and other) times that 'expr' used.

Usage:

     system.time(expr, gcFirst = TRUE)
     unix.time(expr, gcFirst = TRUE)

Arguments:

    expr: Valid R expression to be timed.

 gcFirst: Logical - should a garbage collection be performed
          immediately before the timing?  Default is 'TRUE'.

Details:

     'system.time' calls the function 'proc.time', evaluates 'expr',
     and then calls 'proc.time' once more, returning the difference
     between the two 'proc.time' calls.

     'unix.time' is an alias of 'system.time', for compatibility with
     S.

     Timings of evaluations of the same expression can vary
     considerably depending on whether the evaluation triggers a
     garbage collection. When 'gcFirst' is 'TRUE' a garbage collection
     ('gc') will be performed immediately before the evaluation of
     'expr'. This will usually produce more consistent timings.

Value:

     A object of class '"proc_time"': see 'proc.time' for details.

Note:

     It is possible to compile R without support for 'system.time',
     when the function will throw an error.

See Also:

     'proc.time', 'time' which is for time series.

Examples:

     require(stats)
     system.time(for(i in 1:100) mad(runif(1000)))
     ## Not run: 
     exT <- function(n = 1000) {
       # Purpose: Test if system.time works ok;   n: loop size
       system.time(for(i in 1:n) x <- mean(rt(1000, df=4)))
     }
     #-- Try to interrupt one of the following (using Ctrl-C / Escape):
     exT()                 #- about 3 secs on a 1GHz PIII
     system.time(exT())    #~ +/- same
     ## End(Not run)

