"Unknown error in Thread"

Started by Mohawk20, November 14, 2008, 01:52:29 PM

Previous topic - Next topic

Mohawk20

Hmmm, I got a never before encountered error...

I'm rendering an older scene at high resolution (4096 x 3072), and halfway through the image, I get this error:
"An unknown error occurred in a render thread".

I can see nothing wrong in the render, and rendering continues like normal, but still - it's the 'Red Octagon of Sorrow', so something's gone bad.
Howgh!

Mohawk20

In addition...
A block (or bucket) that was about to render round the time of the error is still black, though blocks beyond that are already complete.
Since the error, TG2 is only using half the processor capacity, instead of fuul capacity before the error. It's still distributed over both cores though.
Howgh!

jo

Hi,

You got this message because something went wrong in one of the threads using for rendering. It's running at half processor capacity because it was probably using two threads on two cores, and when the thread got shut down just the remaining one was working. The problem could have been caused by any number of things. To try and investigate it we would need your project file and *all* of the models, image maps etc. used in the scene. If you can get that together, pm me and we can arrange "delivery" :-).

Regards,

Jo

buzzzzz1

I think I ran into the same thing? However I'm running a single core P4 and 4 Gig of ram. Here's a couple of screen grabs one showing the errors and another showing where it skipped several buffers and picked up rendering about half way across as you can see.  Where it picked up is in a shadow of a building if you are wondering why it's looks strange. Also min and max threads were at default of 1 and 16.
XFX 750i SLI  nFORCE Mobo
Intel Core2 Duo E8400 3.00 GHz Wolfdale
8 Gig Corsair DDR2 6400
Nvidia GForce 9600 GSO 768 MB
XP Pro 64 bit OS

Oshyan

Buzzzzz, looks like it might be getting up around the 2GB per app limit in a 32 bit OS. Are you running 64 bit? Or do you have the /3gb switch enabled?

- Oshyan

buzzzzz1

Quote from: Oshyan on November 15, 2008, 12:15:58 AM
Buzzzzz, looks like it might be getting up around the 2GB per app limit in a 32 bit OS. Are you running 64 bit? Or do you have the /3gb switch enabled?

- Oshyan

No, 32 bit and yeah I noticed the v memory up around 1.8 gig. Wasn't sure if that was it or not so I started rendering smaller crops and so far so good. Just thought you might like to know.

Thanks Oshyan
XFX 750i SLI  nFORCE Mobo
Intel Core2 Duo E8400 3.00 GHz Wolfdale
8 Gig Corsair DDR2 6400
Nvidia GForce 9600 GSO 768 MB
XP Pro 64 bit OS

Oshyan

What is your cache set to? Default 400MB? You might try lowering it a bit.

- Oshyan

Mohawk20

The other thread just errored as well, shutting down all processor activity to tgd.exe

Luckily it happened exactly halfway through the image, so continuing from there is easy.
Jo - expect that PM soon!
Howgh!

buzzzzz1

Quote from: Oshyan on November 15, 2008, 12:30:11 AM
What is your cache set to? Default 400MB? You might try lowering it a bit.

- Oshyan

Well the crop crashed over night so I will try lowering the cache, 200 maybe? Dunno? Perhaps an error notice that TG has ran out of memory would be nice?   I've been thinking for a while now that I need to build another machine that will handle TG.  Maybe I can get a Bailout from the US Treasury?    ;)
XFX 750i SLI  nFORCE Mobo
Intel Core2 Duo E8400 3.00 GHz Wolfdale
8 Gig Corsair DDR2 6400
Nvidia GForce 9600 GSO 768 MB
XP Pro 64 bit OS

Oshyan

From what I have seen it can be quite difficult to handle "out of memory" issues gracefully, and I'm referring to experience with other apps, not just TG. I have always been surprised by this myself and I'm not sure why that seems to be the case, but I experience it a lot. Hopefully we can work out methods such as disk caching (like Photoshop) that will at least allow for graceful handling of those situations, albeit with significantly lower performance.

Ironically if you were running a 64 bit version of Windows you'd probably have no problems, even with your current hardware setup. So you might just consider upgrading to an x64 version of Windows before getting a whole new machine.

As for the cache settings, 200 might help. Make sure you are also only using 1 render thread as the P4 Hyperthreading might be fooling the multi-core detection system (although I think it is usually pretty good about that). The more threads you are using, the higher the memory use.

- Oshyan

reck

#10
I'm getting quite a few errors with one of my project and this "unknown error" is one of them".

The first error I received was the Microsoft Visual C++ Runtime error. This crashed TG and I had to start again. So I closed it down, rebooted the machine and tried again. This time it got further but now I get the "unknown error". On top of that i've been getting the populator errors/warnings that I see quite a lot as well.

Could this be caused by lack of memory, i've got 4GB? It's not a particularlay high resolution image though that i'm trying to render, only 1024x768.

More details

Vista 32bit
Intel Core 2 Duo
4GB RAM
Terragen 2 Beta

If it could be related to memory should I increase or decrease the subdiv cache? I thought increase it to maybe 2GB because then it would allocate all that memory straight away rather then having to allocate hours later during the render. But I notice eariler in the thread it's recommended to decrease the cache size, why is that?

Should I tick "preallocate subdic cache"?

Also any other ideas how I can it to render without crashing?

I plan to move over to 64bit after Christmas but with Windows 7 due next year as well i'll probably wait and buy a 64x bit version of that rather than a 64 bit version of vista.



Mohawk20

Yeah, I have this strange thing...
I'm rendering a 4096x3072 image, done those lots of time. In the mean while I look at some nodes in the main window. All of a sudden I get this Visual C error. I know that if I click 'OK' TG2 will shut down. So I didn't...

The render is going and going, finishing buckets for a bout 140 hours since. It's almost halfway now. If the render finished in about 300 hours, will I be able to save it, or does the Visual C error prevent the save interface screen to open?
Howgh!

reck

well not sure if I should increase or decrease the subdiv cache. Going to guess I should increase it so going to double it 800MB and click  preallocate subdiv cache and see what happens. Going to bed now so i'll take a look in the morning.

Hope I wasn't supposed to decrease the subdiv cache.

jo

Hi,

Decreasing the subdiv cache is a good idea because it frees up memory to be used for other things during rendering which might otherwise run out. I think the preallocation thing helps because it allocates the memory up front and can a) allocate big chunks of memory without fragmentation problems and b) possibly cause the render to fail earlier. That's not a great thing, obviously, but better than waiting for ages and then having it fail.

I'm not really that certain about TG2s memory allocation patterns during rendering, that's more Matt's area, but I hope to get more familiar with it very soon to help make things more robust before final release. It's possible that when memory use is starting to get high then memory allocation might fail even though it seems like there's a decent amount left because the memory is broken up ( fragmented ) and there is no one area large enough for the required allocation. This is even though it might seem like there's quite a bit left. It isn't a situation which is easy to get around. I've been doing some experiments with this lately.

I have found that the various thread render errors can be caused by running out of memory. We're going to be looking into this in the next little while to see if we can improve things.

Even though you have 4 GB of memory, on a 32 bit Windows OS ( including Vista AFAIK ) applications can only use up to 2 GB, unless you have the 3GB switch turned on. Most of the time when we're talking about lack of memory, the problem isn't really that you lack RAM in your machine, it's more that your scene currently requires more memory than the OS will let the application use.

Regards,

Jo

reck

I see, so it sounds like I should have decreased the subdiv cache.

When I got up this morning I could see that the GI prepass didn't even complete with the cache set at 700. Before I came to work I set the cache to 200 and restarted so we will see what happens when I get home tonight.

It seems with TG a 32bit OS is really starting to become a major limitation. I don't think this scene is a particularly demanding one, it has 2x populations of grass, 1x population of trees and a couple of single objects in there, the rendering resolution is 1024x768 at 0.8. I was hoping to start increasing my resolutions in future and also have scenes with more populations, but this seems like i'll never be able to render them because of the 2GB limit on each application. If I understand correctly 64x OS's can allocate up to 4GB per application but is this even enough when wanting to render higher resolutions with lots more populations?