Error: unable to allocate pixelmap

Started by Kranky, September 15, 2007, 12:42:52 PM

Previous topic - Next topic

Kranky

Hello,

I wanted to render a high resolution earth, but I cannot load the textures. The resolution of the textures is 16.384x8.192.
Does anybody knows how to open these large textures?


The error, which I get is the following:

rcallicotte

It depends upon your memory.  This is always going to happen, depending on your memory size.
So this is Disney World.  Can we live here?

Kranky

I've got 2GB RAM and when I use the textures in Blender or Paint Shop Pro everything works fine. :(

dhavalmistry

Quote from: Kranky on September 15, 2007, 02:27:33 PM
I've got 2GB RAM and when I use the textures in Blender or Paint Shop Pro everything works fine. :(

I have 4GB memory and even I still get it sometimes.....it also depends on how big/complex of a scene can your memory handle....
"His blood-terragen level is 99.99%...he is definitely drunk on Terragen!"

jo

Hi,

Just to reiterate this again, it doesn't really matter how much RAM you have in terms of what you can do with TG2. Having more RAM will increase the speed of certain things, but how much RAM TG2 can use is controlled by the operating system and normally that limit is 2 GB on 32 bit Windows. If you have less RAM than that the OS uses virtual memory, which basically means that it uses your hard drive as another place to store information in memory. Even if you only have 64 MB of RAM, if the there is enough space on your hard drive you can still use up to the 2 GB limit, because the OS will read and write any extra on your hard drive. It is much faster for the OS to read and write in your RAM though, which why having more RAM is a good thing. That's a simplistic overview, but it is basically how things work.

In this particular case, the size of each image TG2 is trying to load is 384 MB. You have 3 of them, for a total of 1152 MB. That may seem like it's well within the 2 GB limit, but it depends how much other memory is being used. Last time I checked TG2 allocates some fairly large blocks of memory when it starts up. One thing I've found with Windows is that it doesn't seem to like creating many large blocks of memory. I have a memory tester function in the debug version of TG2, and on Windows I find I can't allocate so many big blocks as I can on OS X, for some reason. It may be that there is memory being used which is scattered across the entire space of memory TG2 can use, and that is preventing it from being able to allocate one big block, even though if you added up all the free space it would be enough.

It's actually unnecessary to load all the image data into memory at one go. TG2 should be more intelligent and cache the image data on disk until it's needed. This will be slower than storing it all in RAM, but it would let you do more. It's a tradeoff really. We will have to look into making the image loading system more intelligent.

Regards,

Jo