[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: 64-bit indexing -- Test machine available with 128GB ram 32 CPUs 12T
From: |
John W. Eaton |
Subject: |
Re: 64-bit indexing -- Test machine available with 128GB ram 32 CPUs 12T scuzzy on Fedora31 |
Date: |
Tue, 11 Feb 2020 23:01:24 -0500 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:60.0) Gecko/20100101 Thunderbird/60.9.0 |
On 2/11/20 9:58 PM, Kai Torben Ohlhus wrote:
If you compile Octave on your own machine from scratch, with only
installing the dependent packages from your Linux distribution, it is
likely not to work. You can check your configure logs. If it looks
like the following, your Octave software stack cannot handle 64-bit indices:
[...]
checking BLAS library integer size... 4
checking for cheev_... yes
checking default size of Fortran INTEGER... 4
[...]
64-bit array dims and indexing: yes
64-bit BLAS array dims and indexing: no
There are two separate issues. First, the ability to create arrays with
more than 2^31 elements, and second, the ability to do linear algebra
and some other operations with large arrays.
With Octave 4.4 and later, if you have a 64-bit system and you have not
used the configure option --disable-64, then you should be able to
create arrays with more than 2^31 elements. That is shown by the
64-bit array dims and indexing: yes
result in the configure script summary.
If you don't have LAPACK, BLAS, and other (typically Fortran-based)
libraries compiled to use 64-bit indexing as well, then you won't be
able to do linear algebra or the other operations provided by those
libraries using those large arrays that you can create. That is shown
by the
64-bit BLAS array dims and indexing: no
result in the configure script summary.
You should be able to test this even on a system with only 3-4GB of
memory using something like
n = 2_100_000_000;
x = ones (n, 1, 'int8');
If this isn't working properly and you have Octave configured with
64-bit indexing enabled, then let's try to figure out why.
jwe