octave-maintainers
[Top][All Lists]
Advanced

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

Re: Rethinking octave_idx_type


From: John W. Eaton
Subject: Re: Rethinking octave_idx_type
Date: Sat, 26 Nov 2016 16:58:37 -0500
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:45.0) Gecko/20100101 Icedove/45.4.0

On 11/26/2016 03:50 PM, Mike Miller wrote:

On 64-bit systems, octave_idx_type would now be a 64-bit value, and
additional logic would have to be put in place now to ensure that we
don't pass 64-bit array sizes into BLAS and other Fortran libraries,
unless the user builds Octave with --enable-64.

Yes, and pointers on these systems are already 64-bits. Mostly we are talking about changing loop counters and array indices to be 64-bits instead of 32, not generating arrays of index values that are now twice as large. So I don't think there is much of a memory issue for dense arrays.

The sparse matrix implementation could also switch to using 64-bit arrays by default for the row and column index vectors and that would require more memory. But fairly often we also see complaints about not being able to store very large sparse matrices, so I think this would be a good change.

When using 32-bit BLAS on 64-bit systems we would now have to check all array dimensions to ensure that they do not overflow 32-bit signed integers. Integer work arrays would remain 32-bit integers as well.

Is it possible today to build Octave on a 32-bit system with
--enable-64?

No.  This proposal doesn't affect 32-bit systems.

jwe




reply via email to

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