[R] calculating memory usage
Prof Brian Ripley
ripley at stats.ox.ac.uk
Mon Sep 13 19:47:28 CEST 2004
On Mon, 13 Sep 2004, Adaikalavan Ramasamy wrote:
> I am comparing two different algorithms in terms of speed and memory
> usage. I can calculate the processing time with proc.time() as follows
> but am not sure how to calculate the memory usage.
>
> ptm <- proc.time()
> x <- rnorm(1000000)
> proc.time() - ptm
Hmm ... see ?system.time!
> I would like to be within R itself since I will test the algorithm
> several hundred times and in batch mode. So manually looking up 'top'
> may not be feasible. help.seach("memory") suggests memory.profile and gc
> but I am not sure how to use these.
I don't think you can. You can find out how much memory R is using NOW,
but not the peak memory usage during a calculation. Nor is that
particularly relevant, as it depends on what was gone on before, the word
length of the platform and the garbage collection settings.
On Windows, starting in a clean session, calling gc() and memory.size(),
then calling your code and memory.size(max=TRUE) will give you a fair
idea, but `top' indicates some Unix-alike.
--
Brian D. Ripley, ripley at stats.ox.ac.uk
Professor of Applied Statistics, http://www.stats.ox.ac.uk/~ripley/
University of Oxford, Tel: +44 1865 272861 (self)
1 South Parks Road, +44 1865 272866 (PA)
Oxford OX1 3TG, UK Fax: +44 1865 272595
More information about the R-help
mailing list