News:

Simutrans Sites
Know our official sites. Find tools and resources for Simutrans.

Error message when loading really big map

Started by Jack Rudd, November 01, 2011, 03:55:44 PM

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

Jack Rudd

When using one of the XL British Isles maps, I got this error message:

FATAL ERROR: xmalloc()
Could not allocate 32764 bytes
Press any key

...followed by an immediate game-exit.

What should I do about this?

jamespetts

Jack,

thank you for your report. To which map were you referring, may I ask? I can't find a map specifically called the "XL British Isles Map" on http://maps.simutrans.com. When I tried with the Northern England map
(1680x1365), I could not reproduce the error.
Download Simutrans-Extended.

Want to help with development? See here for things to do for coding, and here for information on how to make graphics/objects.

Follow Simutrans-Extended on Facebook.

Jack Rudd

It was a 4880 * 7632 map of Britain referred to in this thread. I chopped off the Shetlands to make it a 4864 * 6224 map instead, and that seemed to work.

jamespetts

Hmm - I can't download that map, as files.[ simutrans [dot] us (site down, do not visit) ] has been closed down. Do you have an alternative link? Also - have you checked to see whether you can reproduce this in Standard? It might be that your system does not have enough memory to handle such a large map.
Download Simutrans-Extended.

Want to help with development? See here for things to do for coding, and here for information on how to make graphics/objects.

Follow Simutrans-Extended on Facebook.

Jack Rudd

I haven't checked yet, no. I'm happy enough to play with my Shetlandless map at the moment.

jamespetts

Glad that you managed to find a workaround, and sorry that you've had problems. Let me know if you are able to find an alternative download link for the map so that I can test it. Happy playing!
Download Simutrans-Extended.

Want to help with development? See here for things to do for coding, and here for information on how to make graphics/objects.

Follow Simutrans-Extended on Facebook.

Combuijs

James, if you send a message to combuijs at dds dot nl, I can return you the maps involved. The size is 9MB however.
Bob Marley: No woman, no cry

Programmer: No user, no bugs



Carl

#7
I've just run into this error whilst testing very large maps. The map in the following link is huge -- 8230 * 4220 -- and displays the above error during map creation.

http://dl.dropbox.com/u/61716/HUGETEST.rar (NB. This file is 14MB zipped and over 100MB unzipped).

Map creation appears to crash when Simutrans approaches 2GB of memory usage (specifically, when displaying something like 1,958,000 K in Task Manager). Is 2GB an upper limit for Simutrans' memory usage?


-----------


UPDATE: I've managed to fix this manually using these instructions to tell Windows that the Simutrans-Experimental executable is permitted to use more than 2GB RAM. I assume this arises because the Experimental executable is 32-bit.

jamespetts

I see - interesting. There might be some use in having a 64-bit executable of Experimental after all.
Download Simutrans-Extended.

Want to help with development? See here for things to do for coding, and here for information on how to make graphics/objects.

Follow Simutrans-Extended on Facebook.

TurfIt

Quote from: jamespetts on January 29, 2012, 04:34:09 PM
There might be some use in having a 64-bit executable of Experimental after all.
Not likely. Once such a large map gets populated with the 10's of millions of people, and 10's of thousands of convoys needed to move them, there's not a computer in existence that would be able to run it. Nor is there likely to be one in the near future.

The current 'killer' games that bring your system to a halt consume a mere 300MB in standard...

Carl

I disagree. A map which requires 700MB RAM when loaded blank is still only using around the same amount -- 700MB -- after 3,000 convoys and 1,500 cities (population 3,500,000) are added. Adding more "stuff" seems to add primarily to CPU load, not RAM usage. It would be very difficult to get RAM usage to double, even, just by adding convoys and cities.

What's more, the same map loaded blank in Standard uses 565MB RAM -- not such a large difference.

TurfIt

That was my point.  :)
You'll run out of CPU when running a large map long before the RAM required reaches the 2GB limit. And it's not so much the compute CPU bottlenecking but the CPUs RAM bandwith saturating. If you have a platform/BIOS that lets you indepently change cpu and ram frequencys, drop the ram clock and observe a much more severe performance impact than dropping the cpu clock. A larger map requiring even more RAM just makes this an even greater bottleneck.

The 565MB standard, 700MB experimental is likely due to GCC vs MSVC, unless you're compiling standard with MSVC of course. Experminatal is more memory hungry, but on an emptyish map it's more MSVC not packing some internal structures that results in the increased memory usage.