Desea el paquete rbenchmark y su función benchmark
. (También existe la microbenchmark paquete relacionado y más especializados.)
Aquí es el comienzo de la sección de ejemplos:
R> example(benchmark)
bnchmrR> # example 1
bnchmrR> # benchmark the allocation of one 10^6-element numeric vector,
bnchmrR> # replicated 100 times
bnchmrR> benchmark(1:10^6)
test replications elapsed relative user.self sys.self user.child sys.child
1 1:10^6 100 0.286 1 0.2 0.08 0 0
bnchmrR> # Example 2
bnchmrR> # A call to benchmark with two named expressions and three replication
bnchmrR> # counts, output sorted by the replication counts and then by the
bnchmrR> # elapsed time:
bnchmrR> means.rep = function(n, m)
bnchmr+ mean(replicate(n, rnorm(m)))
bnchmrR> means.pat = function(n, m)
bnchmr+ colMeans(array(rnorm(n*m), c(m, n)))
bnchmrR> benchmark(
bnchmr+ rep=means.rep(100, 100),
bnchmr+ pat=means.pat(100, 100),
bnchmr+ replications=10^(1:3),
bnchmr+ order=c('replications', 'elapsed'))
test replications elapsed relative user.self sys.self user.child sys.child
4 pat 10 0.011 1.00000 0.02 0 0 0
1 rep 10 0.015 1.36364 0.02 0 0 0
5 pat 100 0.107 9.72727 0.10 0 0 0
2 rep 100 0.155 14.09091 0.16 0 0 0
6 pat 1000 1.073 97.54545 1.07 0 0 0
3 rep 1000 1.553 141.18182 1.55 0 0 0
Eso es todo. Gracias Dirk. –