View Full Version : memory leak in particles maybe?

06 June 2008, 01:18 AM
Hi all,

I have a simple particle scene. About nine object are filled with blobs by nine emitters (with nine clouds). The objects are the goals of the pTypes, no collision, no events. Time frame is 250 frames. All emitters start the rate at 0, then up to 500 at frame 25, steady at 500 till frame 50 and back to 0 at frame 51. The rate of the emitters are ofsetted 12 frames to eachother, so the first one starts at 0, the next one at 12, the third one at 25 etc.

When I play the scene in the viewport everything is fine, it plays the scene with all particles in all four viewports.
But when I render the scene XSI hangs after about thirty frames. CPU usage falls back from 100% to around 50% and memory usages slowly but surly increases. After force-quiting XSI, starting it up again and continuing rendering, it stops around 40.

So I hided all clouds but the first and rendered again, then hided all clouds but the second and renderd etc. etc. But even then XSI sometimes freezed, with CPU usage back to 50% and memory usage increasing. It even did this after shutting down the machine and starting up again with no other program running (except zonelab).

I think this is very strange couse this is no heavy scene at all. And when it renders the frames, wether the clouds are hidden or not, the time per frame is merly seconds (around 3 to 4 seconds).

Now, I know that I haven't got a state of the art PC, but I think this isn't normal. Does anyone recognise this or is there a known bug in the XSI particle system? Do I do something wrong maybe? Can anybody help me with this?

My PC is a P4 3Ghz HT, 1Gb ram, ATI9800pro video, P5P800 Asus motherboard.

06 June 2008, 01:28 AM
If you're taling of a memory leak it would be useful to know if beside the cpu going single threaded you also see the render trigger swapping, memory peaking up and paging fluctuating wildly. Memory leaks hang boxes because they top the memory up and start swapping, they don't just magically timebomb your render :)

Also is the simulation cached and read from cache or is it being recomputed every time? You can tell if you start rendering from a frame toward the end, if it's cached correctly it will start immediately, if it doesn't but it calculates particles first than it isn't, and you might want to address it.

MRay isn't new to this kind of things, and submissions on farms normally go in batches of 1 to 5 frames for these reasons (together with many others).
You could also batch your render if the only problem is it needs a restart of the client. that way you wouldn't have to babysit your box.

06 June 2008, 11:34 PM
Hi ThE_JacO,

well... the cpu went single thread and the memory was topping up, not sure about the render trigger and the paging, don't even know where to look for them :)

But the symulation wasn't cached. It wasn't a problem in realtime so I figured it would even be less of a problem during rendering, my bad propably.

So what you are saying is it is better to cach the simulations for rendering, and when rendering simulations render in batches couse MR is crash prone with simulations? Is that with all simulations or just with particles?

06 June 2008, 11:56 AM
In general simulations are always best off cached once you're happy with them, especially before rendering.

CGTalk Moderation
06 June 2008, 11:56 AM
This thread has been automatically closed as it remained inactive for 12 months. If you wish to continue the discussion, please create a new thread in the appropriate forum.