Fwd: out of memory or dimension too large for Octave's index type

Nicholas Jankowski <[email protected]> Wed, 26 Oct 2022 13:37:39 -0400
Newsgroups gmane.comp.gnu.octave.general
Message-ID <CALW4+bL9fB2sdoLB-bnqYhzu+GYuJB+EGbevwC9w0kCPWu+0oA@mail.gmail.com>
(please reply all to keep the help list and everyone else in the
conversation)

---------- Forwarded message ---------
From: Jiang, Yanda [E CPE] <[email protected]>
Date: Wed, Oct 26, 2022 at 12:30 PM
Subject: Re: out of memory or dimension too large for Octave's index type
To: Nicholas Jankowski <[email protected]>



On Wed, Oct 26, 2022, 12:02 Jiang, Yanda [E CPE] <[email protected]> wrote:

Yes, I tried this method and it got resolved.
Btw, may I check another issue, Nick?


Which method? There were two proposed which is why in asked again.

This method.
  if (any (isinf (A(:))) || any (isnan(A(:))))
    error ("glpk: The values in A must be finite");
  endif





If the sentence below gave me the previous error message, does that mean
the problem is not caused by index type, but out of memory? Kindly let me
know your thoughts.


*debug> size(Bf(:, noref))*
*ans =*

*   84450   67518*

*debug> size(Bbus(noslack, noref))*
*ans =*

*   67518   67518*


Assuming Bf and Bbus are themselves not sparse arrays, then yes, it appears
to be an out of memory problem. If they are 8 byte data types, then

Bf = 84450 x 67518 =5.7e elements x 8 bytes = 46.5e9 bytes = 42.5GB

Bbus = 67518 x 67518 = 4.5e9 elements x 8 bytes = 36.5e9bytes = 34GB



Bf and Bbus are sparse. But I guess the inverse of Bbus is not sparse
anymore. Will it be different?
And is this an Octave problem or computer problem?


----------
We are transitioning to a web based forum
for community help discussions at
https://octave.discourse.group/c/help
image.png (image/png, 17.4 KB) - not displayed
image.png (image/png, 13.2 KB) - not displayed