[Rd] optim/vmmin and R_alloc

Göran Broström gb at tal.stat.umu.se
Thu Dec 30 19:59:13 CET 2004


On Thu, Dec 30, 2004 at 08:01:41AM -0800, Thomas Lumley wrote:
> On Thu, 30 Dec 2004, [iso-8859-1] Göran Broström wrote:
> >
> >However, and that is my question/suggestion: Why not use Calloc+Free
> >instead of R_alloc in vmmin (and maybe in other places)? I made the
> >changes in 'optim.c' in the functions 'vmmin' and 'Lmatrix'. Then I rebuilt
> >and reinstalled R-2.0.1. The result was great! My function ran very fast 
> >and
> >without any memory problems.
> >
> >So why not? Or will this change create other problems?
> 
> Memory will leak permanently if the functions are interrupted or an error 
> occurs.  

Not necessarily. If you take a closer look at TFM (as I just did), you find
in Section 5.1.2:

Users should arrange to  Free  this memory when no longer needed, including
on error or user interrupt. This can often be done most conveniently from
an  on.exit  action in the calling  R  function -- see pwilcox for an
example.  

Göran
-- 
 Göran Broström                    tel: +46 90 786 5223
 Department of Statistics          fax: +46 90 786 6614
 Umeå University                   http://www.stat.umu.se/egna/gb/
 SE-90187 Umeå, Sweden             e-mail: gb at stat.umu.se



More information about the R-devel mailing list