Maniphest T39089

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

Assigned To
Brecht Van Lommel (brecht)
Authored By
Clemens Rudolph (idur)
Mar 10 2014, 1:40 PM
Tags
  • BF Blender
  • Cycles
Subscribers
Bastien Montagne (mont29)
Brecht Van Lommel (brecht)
Clemens Rudolph (idur)
Ignatz (ignatz)
Martijn Berger (juicyfruit)
Ronan Zeegers (ronan)
Sergey Sharybin (sergey)
1 More Subscribers

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/)

Related Objects

Event Timeline

Clemens Rudolph (idur) created this task.Mar 10 2014, 1:40 PM
Clemens Rudolph (idur) raised the priority of this task from to 90.
Clemens Rudolph (idur) updated the task description.
Clemens Rudolph (idur) added a project: BF Blender.
Clemens Rudolph (idur) edited a custom field.
Clemens Rudolph (idur) added a subscriber: Clemens Rudolph (idur).
Bastien Montagne (mont29) added subscribers: Thomas Dinges (dingto), Brecht Van Lommel (brecht), Bastien Montagne (mont29).Mar 11 2014, 1:03 AM

Think this is for you, guys?

Sergey Sharybin (sergey) lowered the priority of this task from 90 to Normal.Mar 11 2014, 7:07 AM
Sergey Sharybin (sergey) added a subscriber: Sergey Sharybin (sergey).
Martijn Berger (juicyfruit) added a subscriber: Martijn Berger (juicyfruit).Mar 16 2014, 9:08 PM

does this also happen when using a single GPU ?

Ignatz (ignatz) added a subscriber: Ignatz (ignatz).Mar 16 2014, 11:24 PM

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

Clemens Rudolph (idur) added a comment.Mar 18 2014, 12:14 PM

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

Martijn Berger (juicyfruit) added a comment.Mar 19 2014, 9:46 PM

I have bisected and arrived at:

37c4d6a50a7dc8e819ecab208f150ceb0ae1d01c

this commit causes this issue

Clemens Rudolph (idur) added a comment.Mar 19 2014, 11:57 PM

Wow, thanks for the effort!

Thomas Dinges (dingto) added a subscriber: Ronan Zeegers (ronan).Mar 20 2014, 1:28 PM

◀ Merged tasks: T39280.

Thomas Dinges (dingto) triaged this task as High priority.Mar 20 2014, 1:29 PM
Thomas Dinges (dingto) assigned this task to Brecht Van Lommel (brecht).Mar 20 2014, 1:34 PM
Sv. Lockal (lockal) added a subscriber: Sv. Lockal (lockal).Mar 21 2014, 10:50 PM
Sv. Lockal (lockal) added a comment.Mar 22 2014, 12:40 AM

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 High to 50.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.

Martijn Berger (juicyfruit) added a project: Cycles.Mar 23 2014, 9:03 AM
Brecht Van Lommel (brecht) changed the task status from Unknown Status to Unknown Status.Mar 28 2014, 11:24 PM

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