From mtmorgan at fhcrc.org  Mon Feb  6 22:57:42 2012
From: mtmorgan at fhcrc.org (Martin Morgan)
Date: Mon, 06 Feb 2012 13:57:42 -0800
Subject: [Rd] mem.limits deprecated
In-Reply-To: <CABFfbXu-YRzG7oUBqZyDm_k1GWBRPXoTdi+dMd1-d-+_80TusQ@mail.gmail.com>
References: <CABFfbXu-YRzG7oUBqZyDm_k1GWBRPXoTdi+dMd1-d-+_80TusQ@mail.gmail.com>
Message-ID: <4F304CD6.4080106@fhcrc.org>

On 02/06/2012 12:45 PM, Jeroen Ooms wrote:
> After upgrading my servers to 2.14, log files were filled warnings
> that 'mem.limits' has been deprecated and to use gc instead. After
> reading the NEWS for R 2.14.0 and PR#14795 I learned that it is
> actually deprecated without replacement.
>
> Hereby I just want to voice that this function was actually in use by
> at least several users. Among other things, it is a useful to limit
> per-session memory on a shared resource. I am not sure what the
> assumption that 'these limits are nowadays almost never used' was
> based on, but I would disagree.

These were also sometimes useful in our own use case, where setting 
--min-n/vsize can speed start-up of scripts loading complicated packages 
(e.g., Matrix or Bioconductor IRanges) that trigger dozens of garbage 
collections before arriving at the > prompt, or needing to input large 
data up-front; as a contrived example (70 garbage collections under 
default values):

mtmorgan at linux-ibmc:~> time ~/bin/R-2-13-branch/bin/R --slave --vanilla 
-e "library(IRanges)"

real    0m2.306s
user    0m2.270s
sys     0m0.028s

mtmorgan at linux-ibmc:~> time ~/bin/R-2-13-branch/bin/R 
--min-nsize=2200000 --slave --vanilla -e "library(IRanges)"

real    0m1.931s
user    0m1.854s
sys     0m0.069s

mtmorgan at linux-ibmc:~> ~/bin/R-2-13-branch/bin/R --version
R version 2.13.1 Patched (2011-09-04 r56932)
Copyright (C) 2011 The R Foundation for Statistical Computing
ISBN 3-900051-07-0
Platform: x86_64-unknown-linux-gnu (64-bit)

These were particularly useful in starting up nodes in an (Rmpi) 
cluster, and perhaps more generally suggest that, for some use cases, 
the default memory allocations could be revised (they have not for a 
long time, from current R-devel):

  29749     ripley #define Min_Nsize 220000
  29749     ripley #define Min_Vsize (1*Mega)

Martin

> Obviously this is message is late, the decision has been made and we
> were not paying attention when we should have. However if there is
> possibly anything that can be done to rescue some of this
> functionality that would be greatly appreciated. E.g. by keeping some
> of the support in the memory allocator and moving the R code into a
> package or so.
>
> Thank you
>
> ______________________________________________
> R-devel at r-project.org mailing list
> https://stat.ethz.ch/mailman/listinfo/r-devel


-- 
Computational Biology
Fred Hutchinson Cancer Research Center
1100 Fairview Ave. N. PO Box 19024 Seattle, WA 98109

Location: M1-B861
Telephone: 206 667-2793



[Rd] mem.limits deprecated
Martin Morgan