Page MenuHome

Double render times with Cycles 2.69 vs 2.70RC
Closed, ArchivedPublic

Description

System Information
Win7
I7-2600K
2 x GeForce GTX 580
Driver: 334.89

Blender Version
Broken: 2.70 RC
Worked: 2.69

Short description of error

Hello Devs,

unfortunately I have almost double cycles rendertimes with 2.70 RC.
Mike Pans BMW renders in the same time but my files has problems.
Perhaps it has something to do with linking. I link 28 objects in the szene.

Rendertimes:
2.69 Resolution: 50%HD, 100spmls, 2x GPU 26 sec, CPU 3:13
2.70 Resolution: 50%HD, 100smpls, 2x GPU 45 sec, CPU 6:29

I can´t upload the production folder because it is to big. I tried to delete all necessary stuff but it´s still to big.
But here is a dropbox link:
https://dl.dropboxusercontent.com/u/15310188/render%20bug.zip

(By the way I won a trailer competition for the local short filmfestival
with the video I made with the attached file: http://www.kurzfilmwoche.de/)

Details

Type
Bug

Related Objects

Event Timeline

Clemens Rudolph (idur) set Type to Bug.
Clemens Rudolph (idur) created this task.
Clemens Rudolph (idur) raised the priority of this task from to Needs Triage by Developer.

does this also happen when using a single GPU ?

I'm seeing similar time differences on my system. Only tested it with the GPU, but yeah a bit more than two times slower on Blender 2.7 for this file.

Blender 2.69 - r60995
time: 46.21 seconds

Blender 2.70 - hash 211f08d
time: 2 minutes and 8.5 seconds

Windows 7 Pro 64-bit
core i7-4770K 3.5 GHz
ASUS nVidia GeForce GTX 760 2GB GDDR5 DirectCU Mini

It is also with simgle GPU.
I think it has something to do with linking (and or depsgraph).
I will try later with BI.

I have bisected and arrived at:

37c4d6a50a7dc8e819ecab208f150ceb0ae1d01c

this commit causes this issue

Wow, thanks for the effort!

Thomas Dinges (dingto) raised the priority of this task from Normal to Confirmed, High.Mar 20 2014, 1:29 PM

Confirming bisect by @Martijn Berger (juicyfruit).

Before commit: 00:32.53
After commit: 01:34.59

Note that the following materials have misconnected node trees both to surface and volume sockets:

  • Stuhl_Stoff.alt.fleck
  • Stuhl_Stoff.alt
  • Stuhl_Stoff.alt mit fleck
  • Stuhl_Stoff.alt:FLECK

After fixing materials in 4 library files (which can be filtered in Outliner in "Blender file" mode), the rendertime goes back to 32 seconds.

Thomas Dinges (dingto) lowered the priority of this task from Confirmed, High to Confirmed, Medium.Mar 22 2014, 1:04 AM

@Sv. Lockal (lockal)'s findings gave me an idea.

If a node is connected to the Volume Output, "shader->has_volume" is true in shader.cpp.
This leads to "SD_HAS_TRANSPARENT_SHADOW" being set, and therefore more work and BVH intersections in shadow_blocked().

Solution: Check the nodes that are connected to the Volume output and ignore them, if no valid Volume closure is present.

I wouldn't consider this a bug even. We could make the code smarter here, but it's not possible to do this reliably in all cases even. I've added it to the todo list now:
http://wiki.blender.org/index.php/Dev:2.6/Source/Render/Cycles/Volume