POV-Ray : Newsgroups : povray.animations : Memory Leak During Animations (v3.7.0 rc6, win7) Server Time
28 Mar 2024 08:47:06 EDT (-0400)
  Memory Leak During Animations (v3.7.0 rc6, win7) (Message 1 to 10 of 20)  
Goto Latest 10 Messages Next 10 Messages >>>
From: Sereib
Subject: Memory Leak During Animations (v3.7.0 rc6, win7)
Date: 25 Nov 2012 03:35:01
Message: <web.50b1d707f723930d2fa69460@news.povray.org>
Dear all,

I found some topics, but no useful answer in this forum:
When making animations, the memory consumption increases from frame to frame.
However, this does not happen for all scenes, but I still could not find the
element or setting in/of a scene which causes this problem.

Any idea?

The only solution seems to be to stop rendering after a certain number of
frames, and restart Pov-Ray again and continue with the next set of frames.


Post a reply to this message

From: Stephen
Subject: Re: Memory Leak During Animations (v3.7.0 rc6, win7)
Date: 25 Nov 2012 06:27:05
Message: <50b20089$1@news.povray.org>
On 25/11/2012 8:29 AM, Sereib wrote:
> Any idea?
>
> The only solution seems to be to stop rendering after a certain number of
> frames, and restart Pov-Ray again and continue with the next set of frames.

If it happens consistently with one scene, you should try and isolate 
what is causing it. Then post the scene so that the developers can look 
at it.
As for stopping and starting PovRay, you can write several INI files 
which will render batches of your animation. Then use the file queue: 
Help - 1.5.7.6 File Queue


-- 
Regards
     Stephen


Post a reply to this message

From: Sereib
Subject: Re: Memory Leak During Animations (v3.7.0 rc6, win7)
Date: 25 Nov 2012 08:20:00
Message: <web.50b21aa5f8006e78d2fa69460@news.povray.org>
Hi,

yes, I try to find which element causes the memory leak, and post it when I
found it. And, of course, it's no problem to continue rendering using subset
frames. However, it's just easier to render an animation over a period of for
few days without the demand to check every 4 - 5 hours if the memory consumed by
Pov-Ray exceeds 4 GB.


Post a reply to this message

From: Stephen
Subject: Re: Memory Leak During Animations (v3.7.0 rc6, win7)
Date: 25 Nov 2012 11:12:35
Message: <50b24373@news.povray.org>
On 25/11/2012 1:18 PM, Sereib wrote:
> Hi,
>
> yes, I try to find which element causes the memory leak, and post it when I
> found it. And, of course, it's no problem to continue rendering using subset
> frames. However, it's just easier to render an animation over a period of for
> few days without the demand to check every 4 - 5 hours if the memory consumed by
> Pov-Ray exceeds 4 GB.
>
>
>
>

I know, I have had the same problem. :-(

-- 
Regards
     Stephen


Post a reply to this message

From: Kenneth
Subject: Re: Memory Leak During Animations (v3.7.0 rc6, win7)
Date: 2 Dec 2012 15:05:01
Message: <web.50bbb316f8006e78c2d977c20@news.povray.org>
"Sereib" <nomail@nomail> wrote:
> Dear all,
>
> I found some topics, but no useful answer in this forum:
> When making animations, the memory consumption increases from frame to frame.
> However, this does not happen for all scenes, but I still could not find the
> element or setting in/of a scene which causes this problem.
>
> Any idea?
>
> The only solution seems to be to stop rendering after a certain number of
> frames, and restart Pov-Ray again and continue with the next set of frames.

I've also noticed this problem (or something similar) in v3.61 and 3.62. (In my
case, it was a slow-down of the rendering time per frame, during the animation.)
I don't know the cause, but try this trick (it works for me in v3.62): To start
your animation, set Subset_Start_Frame to 2 (not 1), and Subset_End_frame to
whatever. Then go back and render the missing frame 1. I would be curious to
know if this helps.

Ken


Post a reply to this message

From: Alain
Subject: Re: Memory Leak During Animations (v3.7.0 rc6, win7)
Date: 2 Dec 2012 17:37:14
Message: <50bbd81a$1@news.povray.org>

> "Sereib" <nomail@nomail> wrote:
>> Dear all,
>>
>> I found some topics, but no useful answer in this forum:
>> When making animations, the memory consumption increases from frame to frame.
>> However, this does not happen for all scenes, but I still could not find the
>> element or setting in/of a scene which causes this problem.
>>
>> Any idea?
>>
>> The only solution seems to be to stop rendering after a certain number of
>> frames, and restart Pov-Ray again and continue with the next set of frames.
>
> I've also noticed this problem (or something similar) in v3.61 and 3.62. (In my
> case, it was a slow-down of the rendering time per frame, during the animation.)
> I don't know the cause, but try this trick (it works for me in v3.62): To start
> your animation, set Subset_Start_Frame to 2 (not 1), and Subset_End_frame to
> whatever. Then go back and render the missing frame 1. I would be curious to
> know if this helps.
>
> Ken
>
>
>

Would it be that your first frame had 2 object or less? Then, you add 
some objects each frame.
In this case, the bounding don't kick in in for the first frame, and 
stay disabled for the rest of the naimation.
It could be that simply adding 1 or 2 spheres with no_image, 
no_reflection and no_shadow on the first frame will bring the object 
count high enough.
You coud also set the bounding threshold to 1.
You could add some dumy object off view.


Alain


Post a reply to this message

From: Kenneth
Subject: Re: Memory Leak During Animations (v3.7.0 rc6, win7)
Date: 2 Dec 2012 23:50:00
Message: <web.50bc2eecf8006e78c2d977c20@news.povray.org>
Alain <kua### [at] videotronca> wrote:

> Would it be that your first frame had 2 object or less? Then, you add
> some objects each frame.
> In this case, the bounding don't kick in in for the first frame, and
> stay disabled for the rest of the animation.

In looking back over my notes about my own problem scene, you're indeed correct:
I started off with only 1 object in the first frame of my animation, and added
an extra object for each new frame. (The Bounding_Threshold was as its default
of 3.) That caused a tremendous slow-down in the render, as the frame count went
up. Turning Bounding_Threshold to 1 (or even zero) does eliminate the problem,
as you suggested.

The Subset_Start_Frame=2 trick also works--for reasons unknown! I was aware,
from a long-ago newsgroup post, that whatever number of objects that are in a
scene at frame 1 sets the Bounding_Threshold for an entire animation (or
something like that.) So starting the animation at frame 2 seems to bypass that
'initial setting' in some way(?)

Ken


Post a reply to this message

From: Christian Froeschlin
Subject: Re: Memory Leak During Animations (v3.7.0 rc6, win7)
Date: 3 Dec 2012 09:11:32
Message: <50bcb314@news.povray.org>
Kenneth wrote:

> The Subset_Start_Frame=2 trick also works--for reasons unknown! I was aware,
> from a long-ago newsgroup post, that whatever number of objects that are in a
> scene at frame 1 sets the Bounding_Threshold for an entire animation (or
> something like that.) So starting the animation at frame 2 seems to bypass that
> 'initial setting' in some way(?)

It's probably not "frame 1" but "first frame rendered". How
should povray know how many objects are in "frame 1" when it
never processes that frame ;)


Post a reply to this message

From: Alain
Subject: Re: Memory Leak During Animations (v3.7.0 rc6, win7)
Date: 3 Dec 2012 16:22:51
Message: <50bd182b@news.povray.org>

> Alain <kua### [at] videotronca> wrote:
>
>> Would it be that your first frame had 2 object or less? Then, you add
>> some objects each frame.
>> In this case, the bounding don't kick in in for the first frame, and
>> stay disabled for the rest of the animation.
>
> In looking back over my notes about my own problem scene, you're indeed correct:
> I started off with only 1 object in the first frame of my animation, and added
> an extra object for each new frame. (The Bounding_Threshold was as its default
> of 3.) That caused a tremendous slow-down in the render, as the frame count went
> up. Turning Bounding_Threshold to 1 (or even zero) does eliminate the problem,
> as you suggested.
>
> The Subset_Start_Frame=2 trick also works--for reasons unknown! I was aware,
> from a long-ago newsgroup post, that whatever number of objects that are in a
> scene at frame 1 sets the Bounding_Threshold for an entire animation (or
> something like that.) So starting the animation at frame 2 seems to bypass that
> 'initial setting' in some way(?)
>
> Ken
>
>
>
>
It's probably that, at frame 2, you allready have at least 3 objects, 
triggering the bounding for all subbsequent frames.
That's why it's suggested to add some invisible object in an animation 
that start with less than 3 objects in the first frame, but get more 
objects as it progress. That way, you force the bounding for the first 
frame.


Post a reply to this message

From: Kenneth
Subject: Re: Memory Leak During Animations (v3.7.0 rc6, win7)
Date: 3 Dec 2012 19:15:01
Message: <web.50bd3fa4f8006e78c2d977c20@news.povray.org>
Alain <kua### [at] videotronca> wrote:

> It's probably that, at frame 2, you already have at least 3 objects,
> triggering the bounding for all subsequent frames.

and Christian wrote:
> It's probably not "frame 1" but "first frame rendered". How
> should povray know how many objects are in "frame 1" when it
> never processes that frame ;)

I see what both of you are suggesting--that there's nothing 'special' about
starting at frame 2 vs. frame 1, that the slowdown is based on other
circumstances. I hadn't considered that.

So I set up a weird animation test scene, to give myself a better understanding
of what's going on: 200 frames, Bounding_threshold = 2, and only 1 object in the
scene at the beginning. Then I starting adding more objects continually (simple
spheres), one after the other--but beginning those additions only at frame
100--then ran the animation from frame 1.

In this case, the slowdown only begins at frame 100 (and keeps getting slower,
far more so than the addition of a single-sphere-per-frame would indicate.) So
it really has nothing to do with starting the animation at frame 2. You're both
correct! Thanks for helping me clarify the situation.

BTW, each additional sphere added only about 900 bytes to "peak memory used", so
in my case it doesn't seem to be a memory leak--at least from the standpoint of
the "peak memory used" messages.

I decided to be thorough with my testing, so I've concocted some 'rules'
(observations) about what happens re: Bounding_Threshold (I'll call it BT below)
in v3.6.2. Some of this may be obvious to more astute POV-er's.

OBSERVATIONS:
1) If the number of objects in the scene at the *start frame of animation* (not
necessarily frame 1) is less than the BT value, nothing bad happens UNTIL you
start adding other objects. Then the renderings start slowing down at that frame
number. It doesn't matter that the TOTAL objects at that point are more OR less
than the BT value.
2) With the same set-up: If you start to *continually* add news objects at a
certain frame, one after the other, a *continual* slowdown begins at that point.
If you add only a finite number of objects at a particular frame and no more,
then a slowdown happens as well, but it's a 'finite' slowdown (for all
subsequent frames too) and doesn't get any slower.
3) Setting Subset_Start_Frame to a frame number where the scene still has less
scene objects than the BT setting, the slowdown also occurs.
4) But setting Subset_Start_Frame to a frame number *after* extra objects have
been added (as many or more total objects than the BT setting), there's NO
slowdown.

It doesn't surprise me that the intricacies of this have made the problem hard
to nail down!

Ken


Post a reply to this message

Goto Latest 10 Messages Next 10 Messages >>>

Copyright 2003-2023 Persistence of Vision Raytracer Pty. Ltd.