[Rd] gctorture and proc.time (PR#10600)

Hin-Tak Leung hin-tak.leung at cimr.cam.ac.uk
Wed Jan 23 03:01:00 CET 2008


Peter Dalgaard wrote:
> charlie at stat.umn.edu wrote:
>> In R version 2.6.1 (2007-11-26)
>> and R version 2.6.1 Patched (2008-01-19 r44061)
>> on openSUSE 10.2 (X86-64)
>>
>>   
>>> gctorture()
>>> proc.time()
>>>     
>> Error: protect(): protection stack overflow
>>
>> The problem with this is that then
>>
>> R CMD check --use-gct foo
>>
>> ALWAYS FAILS with
>>
>>   
>>> cat("Time elapsed: ", proc.time() - get("ptime", pos = 'CheckExEnv'),"\n")
>>>     
>> Error in proc.time() - get("ptime", pos = "CheckExEnv") :
>>   non-numeric argument to binary operator
>>
>> This does not happen in R version 2.4.1 (2006-12-18)
>>
>> I was going to have my computing class try out --use-gct.
>> I guess not until this is fixed.
>>
>>   
> I can reproduce this on SUSE 10.2 64 bit and Fedora 7 64 bit, but not on 
> SUSE 10.3 32 bit and Fedora 8 32 bit. (The OS versions are likely not 
> relevant, I bet it is a 64 bit issue somewhere).

I can be a bit more precise - I have both 32-bit R and 64-bit R built 
and installed on fedora 8 64-bit, just one and same box.

32-bit R finishes quite quickly with:

 > proc.time()
    user  system elapsed
   0.772   0.032  10.147

64-bit R takes up 49s CPU time (from ps). This is long compared to 
either 10s (elapse) or 1s (user+sys). And it ends with:
Error: protect(): protection stack overflow

So yes, it looks like a 64-bit R specific bug.



More information about the R-devel mailing list