[R] Error: cannot allocate vector of size 3.4 Gb

Benilton Carvalho bcarvalh at jhsph.edu
Sat Nov 7 03:29:55 CET 2009


oh, and i forgot to say the following:

if you're reading in 70 SNP 6.0 files, this is the math for memory  
usage:

70*(2560^2)/(2^27) = 3.4GB

the error message tells you don't have 3.4GB of free **contiguous** RAM.

b

On Nov 7, 2009, at 12:19 AM, Benilton Carvalho wrote:

> this is converging to bioc.
>
> let me know what your sessionInfo() is and what type of CEL files
> you're trying to read, additionally provide exactly how you reproduce
> the problem.
>
> it appears to me, i'm not sure, that you start a fresh session of R
> and then tries to read in the data - how much resource do you have
> available when you try reading in the data? having 8GB RAM does not
> mean that you have 8GB when you tried the task.
>
> b
>
> On Nov 7, 2009, at 12:08 AM, Peng Yu wrote:
>
>> On Fri, Nov 6, 2009 at 5:00 PM, Marc Schwartz <marc_schwartz at me.com>
>> wrote:
>>> On Nov 6, 2009, at 4:19 PM, Peng Yu wrote:
>>>
>>>> On Fri, Nov 6, 2009 at 3:39 PM, Charlie Sharpsteen <chuck at sharpsteen.net
>>>>>
>>>> wrote:
>>>>>
>>>>> On Fri, Nov 6, 2009 at 1:30 PM, Peng Yu <pengyu.ut at gmail.com>
>>>>> wrote:
>>>>>>
>>>>>> I run R on a linux machine that has 8GB memory. But R gives me an
>>>>>> error "Error: cannot allocate vector of size 3.4 Gb". I'm
>>>>>> wondering
>>>>>> why it can not allocate 3.4 Gb on a 8GB memory machine. How to
>>>>>> fix the
>>>>>> problem?
>>>>>
>>>>> Is it 32-bit R or 64-bit R?
>>>>>
>>>>> Are you running any other programs besides R?
>>>>>
>>>>> How far into your data processing does the error occur?
>>>>>
>>>>> The more statements you execute, the more "fragmented" R's
>>>>> available
>>>>> memory pool becomes.  A 3.4 Gb chunk may no longer be available.
>>>>
>>>> I'm pretty sure it is 64-bit R. But I need to double check. What
>>>> command I should use to check?
>>>>
>>>> It seems that it didn't do anything but just read a lot of files
>>>> before it showed up the above errors.
>>>
>>>
>>> Check the output of:
>>>
>>> .Machine$sizeof.pointer
>>>
>>> If it is 4, R was built as 32 bit, if it is 8, R was built as 64
>>> bit.  See
>>> ?.Machine for more information.
>>
>> It is 8. The code that give the error is listed below. There are 70
>> celfiles. I'm wondering how to investigate what cause the problem and
>> fix it.
>>
>> library(oligo)
>> cel_files = list.celfiles('.', full.names=T,recursive=T)
>> data=read.celfiles(cel_files)
>>
>>> You can also check:
>>>
>>> R.version$arch
>>>
>>> and
>>>
>>> .Platform$r_arch
>>>
>>> which for 64 bit should show x86_64.
>>>
>>> HTH,
>>>
>>> Marc Schwartz
>>>
>>>
>>
>> ______________________________________________
>> R-help at r-project.org mailing list
>> https://stat.ethz.ch/mailman/listinfo/r-help
>> PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
>> and provide commented, minimal, self-contained, reproducible code.
>
> ______________________________________________
> R-help at r-project.org mailing list
> https://stat.ethz.ch/mailman/listinfo/r-help
> PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
> and provide commented, minimal, self-contained, reproducible code.




More information about the R-help mailing list