octave with enable-64
David Bateman
dbateman at dbateman.org
Fri Jun 5 15:25:34 CDT 2009
Jaroslav Hajek wrote:
> On Fri, Jun 5, 2009 at 12:04 PM, Alexander
> Barth<barth.alexander at gmail.com> wrote:
>
>> On Wed, Jun 3, 2009 at 4:08 PM, Alexander
>> Barth<barth.alexander at gmail.com> wrote:
>>
>>> Hi all,
>>> I would like to compile octave with --enable-64 to create matrices
>>> larger than 2GB.
>>>
>>> Does somebody has experience in compiling BLAS, LAPACK and SuiteSparse
>>> so that this option can be used?
>>>
>>> So far I tried to compile the reference BLAS and LAPACK with the
>>> gfortran option -fdefault-integer-8 and SuiteSparse with the option
>>> -DLP64 (I got this from UMFPACK's User Guide). However the example
>>> program in UMFPACK (SuiteSparse/UMFPACK/Demo/umfpack_simple) failed at
>>> the call of dgemv (a BLAS function).
>>>
>>> I have the same error with gotoBLAS 1.26 (using BINARY64=1 INTERFACE64=1).
>>>
>>> Any insight would be greatly appreciated!
>>>
>>> Thanks
>>> Alex
>>>
>>> My system and software versions:
>>> gcc/gfortran 4.2.4
>>> octave 3.0.5
>>> metis 4.0.1
>>> SuiteSparse 3.4.0
>>> lapack 3.1.1
>>> Ubuntu 8.04 / Xeon 64-bit / 16 GB RAM
>>>
>>>
>> It seems that compiling suitesparse with the flags " -DLP64
>> -D'LONGBLAS=long int' -D'LONG=long int' " works. It compiles correctly
>> the demo program in UMFPACK and the building of octave works too.
>>
>> In octave, splu does also works:
>>
>>
>>>> A = sprandn(2000,2000,.1);
>>>> [L,U] = splu(A);
>>>> d = L*U - A; max(abs(d(:)))
>>>>
>> ans = Compressed Column Sparse (rows = 1, cols = 1, nnz = 1)
>>
>> (1, 1) -> 6.8834e-14
>>
>>
>> Cheers,
>> Alex
>>
>
> This is nice. Since you're likely a pioneer in this regard, maybe
> you'd want to write a short info on the Octave wiki?
>
>
>
>
I tried to make the sparse code compatible with --enable-64 when I wrote
it as suitesparse itself is compatible with 64-bit... It might be
interesting to try a QR factorization as that calls CXSPARSE that I
suspect might be less tested for 64-bit than the other suitesparse code.
Of course there might be bugs in the octave code itself as well, though
I think I used octave_idx_type everywhere....
D.
--
David Bateman dbateman at dbateman.org
35 rue Gambetta +33 1 46 04 02 18 (Home)
92100 Boulogne-Billancourt FRANCE +33 6 72 01 06 33 (Mob)
More information about the Help-octave
mailing list