[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Unidentified subject!
From: |
John W. Eaton |
Subject: |
Unidentified subject! |
Date: |
Wed, 15 Sep 2004 20:30:42 -0400 |
On 15-Sep-2004, Darrick Edward Chang <address@hidden> wrote:
| Hi, I was wondering if there is any fundamental limit to the size of a
| matrix that can be created in octave.
Currently, indexing and sizing is done with ints, so on most current
systems this is a 32-bit signed quantity. That means you are limited
to a 2GB chunk of memory, or about 2GB, or about 256*1024*1024 double
precision elements.
| In particular, I come across the following error messages:
| > octave:2> a=i*ones(16400,8192);
| > panic: Segmentation fault -- stopping myself...
| > attempting to save variables to `octave-core'...
| > save to `octave-core' complete
| > Segmentation fault
|
| > octave:3> a=zeros(16384,16384);
| > error: Array::Array (const Array&, const dim_vector&): dimension
| mismatch
| > error: Array::Array (const Array&, const dim_vector&): dimension
| mismatch
| > error: evaluating assignment expression near line 3, column 2
|
| Is there any fix around these problems? Thanks for your help!
What kind of system are you using? If it is a 64-bit system, then
eventually I hope that Octave will be able to handle arrays larger
than 2GB. But it will be a lot of work to make that happen and I
don't expect it to be done any time soon unless someone donates the
code or funding specifically for this project.
jwe
-------------------------------------------------------------
Octave is freely available under the terms of the GNU GPL.
Octave's home on the web: http://www.octave.org
How to fund new projects: http://www.octave.org/funding.html
Subscription information: http://www.octave.org/archive.html
-------------------------------------------------------------