PipelineFX Forum

Qube! => General => Topic started by: rtaege on April 08, 2014, 04:38:28 PM

Title: upgradeed from 6.5-0 to 6.5-2...renders taking 4x as long
Post by: rtaege on April 08, 2014, 04:38:28 PM
I'm wondering if anyone knows of a reason this could happen. I upgraded my supervisor, workers and clients to 6.5-2 and now the same render job I have been rendering is taking roughly 4x as long. I upgraded through the installer, so it was fairly automated, all my settings should have stayed the same.

Each frame used to take about 45 sec and now is taking over 5 min.

I don't think anything else could have happened on the supervisor machine, but I'm not 100% sure. What could have even changed to see a difference like this?

Title: Re: upgradeed from 6.5-0 to 6.5-2...renders taking 4x as long
Post by: jburk on April 08, 2014, 07:13:57 PM
Do the jobs still take the same amount of time to start up, but now they just run longer?

Are you certain that nothing in the scene file or source textures have changed?
Title: Re: upgradeed from 6.5-0 to 6.5-2...renders taking 4x as long
Post by: rtaege on April 08, 2014, 11:20:58 PM
So I guess something was changed in 6.5-2 for Cinema 4D submissions. "Threads" needs to be set to 0 to use all cores on each worker. In 6.5-0, if it was set to 0, each core would be assigned a frame so you'd end up with a worker trying to render 16 frames at once.

Set threads=0 and it fixed it.

6.5-0 = threads = 1
6.5-2 = threads = 0
Title: Re: upgradeed from 6.5-0 to 6.5-2...renders taking 4x as long
Post by: jburk on April 09, 2014, 12:42:54 AM
good catch; there was a bugfix in 6.5-2 re: C4D's handling of it's '-threads' argument.

"0" has always meant "use all cores", but if you passed C4d its own default value of "0", it would become unstable.  I guess they figure "why would you specify a default value?"

So there were some changes between 6.5-0 and 6.5-2 that affected the passing of default value of "0" to make it actually align with reality; if you specify 0, the '-threads' argument is removed from the job's C4D command-line, and C4D runs with its default behavior of all threads.  Passing '1' will tell C4D to only render on 1 core.