What does this error message mean?

Use this forum to post Vensim related questions.
Post Reply
John Swanson
Member
Posts: 23
Joined: Mon Jan 10, 2005 12:39 pm

What does this error message mean?

Post by John Swanson »

Insufficient memory for block allocation to be made.

What is that telling me? What should I be looking for?
tomfid
Administrator
Posts: 3816
Joined: Wed May 24, 2006 4:54 am

Re: What does this error message mean?

Post by tomfid »

When does it happen?

It could be that your model is too big to be executed. Check Model>Settings>Info and see how many equations there are.

Tom
John Swanson
Member
Posts: 23
Joined: Mon Jan 10, 2005 12:39 pm

Re: What does this error message mean?

Post by John Swanson »

It's a model we use to process the outputs (via a vdf) from a larger model. That's a big model of land and transport interactions, and because it has to use a lot of arrays, it uses lots of memory.

The smaller model has relatively few equations, but still uses quite a lot of big arrays.

The error occurs after the 'setting up the model...' message. Vensim grinds away for 10 minutes or more, then says 'insufficient memory for block alocation' and halts.

We just tried a run where we cut the number of geographic zones by 20% and it ran, but unfortunately we need all the zones!

The model size stats say 14284800 auxilairies, 5273600 data, total 19558405. (There are no levels - it's just doing a lot of arithmetical calculations.)

By comparison, the main model, which does run, says 3206762 levels, 43418384 auxiliaries, 0 data, 4669855 constants, total 51297224.

Any ideas?

John
tomfid
Administrator
Posts: 3816
Joined: Wed May 24, 2006 4:54 am

Re: What does this error message mean?

Post by tomfid »

You may be limited by your largest array block - what number does it give with the "insufficient memory" error? (I'm guessing somewhere upward of 500 megabytes)
John Swanson
Member
Posts: 23
Joined: Mon Jan 10, 2005 12:39 pm

Re: What does this error message mean?

Post by John Swanson »

Tom - it doesn't give any number. All it says is: Insufficent memory for block allocation to be made.

I think we've found a workaround. The input was read in from two vdf files, as Data type. However for these calculations we only need to know the results at the end of the simulation (we compare the long term 'do nothing' with 'do something') so we tried exporting the data to a csv and read it in as constants, and that worked.

Memory shortage is a real problem for us with this model. Because we have to have a geographic representation, and represent movements between locations, we have lots of originxdestination arrays. Add to that information about transport networks, different kinds of trip, land use etc and it soon adds up. We often have to spend time finding workarounds because Vensim crashes for lack of memory, and it's hard to tell potential clients in advance exactly how many zones we can handle in their proposed model. So if Vensim has plans for a major upgrade, I'd really like to see much better memory handling - or a 64 bit version!
best regards
John
tomfid
Administrator
Posts: 3816
Joined: Wed May 24, 2006 4:54 am

Re: What does this error message mean?

Post by tomfid »

We're working on it.

I don't think it'll help with memory, but if your arrays are sparse, VECTOR SELECT can help quite a bit with execution time.
Post Reply