octave-maintainers
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Can't compile Octave source on Snow Leopard


From: Carlo de Falco
Subject: Re: Can't compile Octave source on Snow Leopard
Date: Mon, 1 Nov 2010 22:09:42 +0100

On 1 Nov 2010, at 08:24, c. wrote:

> 
> On 1 Nov 2010, at 08:20, Jarno Rajahalme wrote:
> 
>> 64-bit linking with the system vecLib does not work, due to a bug in Apple 
>> 64-bit version of the vecLib. I've reported this to Apple earlier this year. 
>> For 64-bit you have to use a separate BLAS/LAPACK library.
>> 
>> Regards,
>> 
>> Jarno
> 
> Thanks.
> I am currently trying to build with goto blas, I will report back if I get 
> any success.
> c.

Hi, 
I managed to finish a build with large arrays enabled and I am reporting the 
results to the list as promised.
Support for matrices larger than in the 32bit version seems to work:

>> version
ans = 3.2.3
>> a = ones (2^28, 1);
error: memory exhausted or requested size too large for range of Octave's index 
type -- trying to return to prompt

>> version 
ans = 3.3.53+
>> a = ones (2^30, 1);
>> 

to complete the build I had to 

1) patch gnulib as suggested by Jarno in a post to the gnulib_bug mailing list 
(see attached gnulib_patch.txt)

2) apply the patch in the attached file octave_patch.txt to the octave sources.
I believe the changes to /liboctave/boolSparse.cc should be pushed in the 
repository, but I'm not really sure about
those in /src/bitfcns.cc and /src/defun.cc .

as for the speed, although I didn't perform thorough testing, 
the 64bit 3.3.53+ version linked to goto-blas seems to perform similarly to  
3.2.3 linked to vecLib:

>> tic, full (diag (4*ones (3e3, 1))-diag (ones (3e3-1, 1), -1)-diag (ones 
>> (3e3-1, 1), +1)) \ ones (3e3, 1); toc
Elapsed time is 2.15212 seconds.
>> version
ans = 3.2.3
>> 

>> tic, full (diag (4*ones (3e3, 1))-diag (ones (3e3-1, 1), -1)-diag (ones 
>> (3e3-1, 1), +1)) \ ones (3e3, 1); toc
Elapsed time is 2.115 seconds.
>> version
ans = 3.3.53+
>> 


but there are still some problems left to solve:

>> rand(1)
  Generator number out of range in SETCGN: Legal range is 1 to                  
  32  -- ABORT!
error:  Generator number out of range in SETCGN
terminate called after throwing an instance of 'octave_execution_exception'
panic: Abort trap -- stopping myself...

so I'm going to reinstall fink and switch back to 32bit, using the 
configuration script provided by Ben for the time being.

Thanks to all for your help,
Carlo




Attachment: octave_patch.txt
Description: Text document

Attachment: gnulib_patch.txt
Description: Text document



reply via email to

[Prev in Thread] Current Thread [Next in Thread]