Skip to content

Memory allocation error in 2.6.2 (PR#10903)

2 messages · bosap at metro.dst.or.us, Henrik Bengtsson

#
Full_Name: Peter Bosa
Version: 2.6.2
OS: RHES 4.2 - 4.5
Submission from: (NULL) (67.138.101.226)


I am experiencing a memory allocation error with R 2.6.2 which was not present
in previous versions of R (2.4 and 2.2). I have several Linux machines with
various Redhat OS versions loaded on them, ranging from 4.2 through 4.5. Each
machine has 6 GB of RAM and 2 to 4 GB of virtual memory.

The processes I am running include calculations on large matrices (1,015 x
2,029). While the programs are large users of memory, they were stable (i.e. no
memory crashes with the earlier versions of R) on all machines. However, running
the same programs using R 2.6.2, I consistently get the error message "Cannot
allocate vector of size 15.7kb". I am calling the programs with the
--max-vsize=3G command...no difference. Using a garbage collection command, I
can see that the programs never use more heap than 2.5 GB. And, as stated
before, this was not an issue when the same machines were loaded with R 2.4 or
2.2.

I have verified that the OS settings are exactly the same as before (unlimited
allocation of memory to programs). Also, when I re-install R 2.4, the programs
run correctly. I have not been able to test R 2.5 or R 2.6.0, since I cannot
find binary packages of these versions, and I have yet to compile the source
code.

Any thoughts?
#
Before submitting a bug report, it is probably wise to bring it up on
r-devel first.  Remember, someone has to clean out all those false bug
reports manually.

There are so many potential reasons for your problem, which indicates
fragmented memory allocations.  One obvious one is that one of the
packages you are using have been updated.  In order for anyone to say
anything about your problem, the minimum you can do is post your
sessionInfo():s.  Then maybe one of the authors of those packages
reads this and know exactly what is going on.  Also, some kind of
script is also useful, because maybe it is obvious from your code.
You might simply have "been lucky" in previously.

My $0.02

/Henrik
On Thu, Mar 6, 2008 at 10:10 AM, <bosap at metro.dst.or.us> wrote: