POV-Ray : Newsgroups : povray.beta-test : thread count rendertimes unpredictable? : Re: thread count rendertimes unpredictable? Server Time
28 Jul 2024 18:15:00 EDT (-0400)
  Re: thread count rendertimes unpredictable?  
From: Bob Hughes
Date: 25 Jan 2009 04:36:56
Message: <497c32b8$1@news.povray.org>
"Chambers" <ben### [at] pacificwebguycom> wrote in message 
news:E70AB5682EB0400CB22624BA6FD0F183@HomePC...
> OK, using the modified beta 30, render times for 800x600 w/ no AA are:
>
> 2 Threads: 79 seconds
> 1 Thread: 33 seconds.
>
> The top 50% of the render completes in 17 seconds using either 1 or 2
> threads, so something is odd there, but most of the problem is in the
> lower half.

That's much the same I get here, noticeably slower after about 45%.

> In the file lsl_legends-symbols.inc, try commenting out the code
> beginning with:
> text {
> ttf "arialbd.ttf",
> "NOMINAL",
>
> And ending with:
>
> #end  // SKIP PREVIOUS YEAR IF MONTH GRAPH
> object {
> MinimalCurve
> translate <0,-6*52,-15>
> }
> translate 0.5*z
> }
>
> This makes the file render in 9 seconds with one thread, and 6 seconds
> with two - which I would call a return to normalcy :)

Yep, that's the sphere_sweep part for those of you reading here. You deserve 
thanks for going through that mess of SDL!
I had taken one year of sphere sweeps out where the render gets very slow 
and it didn't seem to help as much as I would have thought it could so I 
left it alone from then on.

> Now, the next task is to come up with a simpler demonstration of the
> problem.

I went back to trying just certain parts in a new test file using the same 
stuff from the original, added in first one year then another, and got these 
render times.

Only sphere sweeps:

no AA 1 thread 19 sec
no AA 2 threads 11 sec
AA 1 thread 52 sec
AA 2 threads 29 sec

plus background:

no AA 1 thread 21 sec
no AA 2 threads 12 sec

plus year 2007 (in second half of image):

no AA 1 thread 47 sec
no AA 2 threads 33 sec

plus years 2004 (first half of image) and 2007:

no AA 1 thread 50 sec
no AA 2 threads 66 sec

And as you can see, this last one is where it turns times around.

I was checking whether or not layered texture cylinders overlapped in a 
similar way (in a new test file) would cause the slowdown by itself and only 
proved it wasn't the reason.

I keep thinking it must be something about the combination of sphere_sweep 
and the overlapping cylinders. My guess would be the bounding going crazy, 
which I could be wrong about. I just never expected anything like this to 
relate to number of threads. I can only presume this kind of thing will 
happen to other scene files.

Another test file I tried earlier was a sphere_sweep with random 3D points, 
looking like a tangled loose ball of string, with hundreds of objects used 
from the graph file and it failed to cause a reversal of render times due to 
thread count. In fact, I wasn't getting a significant slowdown. It could be 
my graph file is unique in regards to this thread count trouble but there 
has to be something peculiar about it. I got a 28X slower render once while 
checking it, from 10 sec to 280 sec. going from Work_Threads=1 to 2.

Thanks again for checking on it yourself, Ben.

Bob


Post a reply to this message

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