From hin-tak.leung at cimr.cam.ac.uk  Tue May 16 11:45:04 2006
From: hin-tak.leung at cimr.cam.ac.uk (Hin-Tak Leung)
Date: Tue, 16 May 2006 10:45:04 +0100
Subject: [Rd] (PR#8861) Memory allocation fails in R 2.2.1 and R 2.3.0
 on SGI Irix, while plenty of memory available
In-Reply-To: <20060515155403.GJ6479@bioinf-235-161.pc.fgg.eur.nl>
References: <20060515130956.5B71619B2D@slim.kubism.ku.dk>	<Pine.LNX.4.64.0605150740250.29777@homer23.u.washington.edu>	<Pine.LNX.4.64.0605151602300.23923@gannet.stats.ox.ac.uk>
	<20060515155403.GJ6479@bioinf-235-161.pc.fgg.eur.nl>
Message-ID: <44699F20.9070706@cimr.cam.ac.uk>

On a solaris 9 box here, gcc 3.4.2 defaults to build 32-bit binaries for 
some unknown reason, but can be pursuaded to build 64-bit executables
by passing the -m64 switch explicitly. (this is first hand experience, 
discovered while looking into a similiar anomaly with another piece
of software). I think gcc on early version of Mac OS X (10.2?) has
a similiar behavior also of defaulting to 32-bit unless told otherwise,
but can be pursuaded. Maybe gcc on IRIS can be similiarly pursuaded
too?

gcc -v
Reading specs from /usr/local/lib/gcc/sparc-sun-solaris2.9/3.4.2/specs
Configured with: ../configure --with-as=/usr/ccs/bin/as 
--with-ld=/usr/ccs/bin/ld --disable-nls

Mirjam van Vroonhoven wrote:
> Prof Brian Ripley wrote on Mon, May 15, 2006 at 04:09:38PM +0100:
>>> You can tell if you have a 64bit build of R by looking at
>>> .Machine$sizeof.pointer in R, which should be 8.
>> And if this is a 32-bit build, it is working as expected given the limited 
>> address space.
> 
> It is a 32 bit build. My R 2.0.0 is a 64bit build.
> 
>>> If not, then you need to set whatever C and Fortran compilation flags give
>>> a 64bit system. It doesn't look to me as if R's configure script has any
>>> special handling for C compiler flags on SGI.
>> Well, the R-admin manual says (under IRIX)
>>
>>   @R{} 2.1.0 has been successfully built on IRIX64 6.5 using both
>>   @command{gcc} and the native (MipsPro 7.4) compiler. However, neither
>>   version has passed @command{make check} due to a problem with time
>>   zones (see below).  A 64-bit executable has not been successfully
>>   built.
>>
>> so we could not use special handling for a system we have not been told 
>> how to build in 64-bit mode.
>>
>> Here we don't know the OS, the compiler, the flags used .... and that 
>> definitely is a bug.
> 
> The OS is irix 6.5.27, compiler = gcc, no special flags.
> 
> But that is no different from what I recall to have done when building
> R 2.0.0 a long time ago.
> 
> I'll try to find out how to build a 64 bit executable, and see wether it
> works. Probably that is easier using the native mipspro compiler.
> Will report back to you guys when I find out a way to build a working
> 64bit R 2.3.0 on SGI/irix64
> 
> Thanks for the time,
> 
>                                                 Mirjam
>



[Rd] (PR#8861) Memory allocation fails in R 2.2.1 and R 2.3.0 on SGI Irix, while plenty of memory available
Hin-Tak Leung