Good afternoon,
I am trying to adapt a program I wrote on MATLAB and run it on OCTAVE.
The program has input data saved in .mat files, some of them containing quite big matrices (120000x330, real).
I am working with a workstation HP Z820 with 32 GB of RAM.
When I try to load the files on OCTAVE, an error occurs:
"error: out of memory or dimension too large for Octave's index type".
Also when I generate a random real matrix of those dimensions,
A = randn (120000, 330);
>> whos A
Variables in the current scope:
Attr Name Size Bytes Class
==== ==== ==== ===== =====
A 120000x330 316800000 double
Total is 39600000 elements using 316800000 bytes
then I cannot do not even the transpose of the matrix A:
B=A';
error: out of memory or dimension too large for Octave's index type
Sto cercando di adattare un programma che ho scritto su MATLAB
e farlo girare su OCTAVE. Il programma ha dei dati in ingresso salvati su file .mat,
ed alcuni di essi sono matrici abbastanza grandi (120000x330).
Sto attualmente lavorando con una workstation HP Z820 con 32 GB di RAM.
Quando provo a caricare i file su OCTAVE mi da un errore
"error: out of memory or dimension too large for Octave's index type"
e anche quando genero una matrice random di quelle dimensioni,
poi non riesco neanche a fare la trasposta, mi da sempre l'errore di sopra.
Penso che il problema fondamentale sia che la versione scaricabile dal sito
di OCTAVE è 32 bit. Ho provato a caricare gli stessi file su FreeMAT e li carica senza problemi,
nonostante mi sembri più limitato come programma, però lavora a 64bit. Fa anche una SVD
sulla matrice..
Come posso risolvere questo problema in OCTAVE?
E' possibile far girare OCTAVE a 64 bit?
Come posso fare?
Grazie.