Slower Cycles GPU in Blender 2.8 Beta

I have a simple scene for testing. For some reason Cycles GPU in Blender 2.8 performs much worse. Any idea why? Mostly the first reviews said Cycles should performs a little better.

Render times

Blender 2.79: 4:30
Blender 2.80 Beta: 5:28
OS: Windows 10 1803
GPU: Geforce GTX 1060 6GB

Scene download: https://ufile.io/0apqd
Scene download: https://ufile.io/dc829

2 Likes

Hi, as Cycles now support GPU + CPU render it is better also for GPU only to use smaller tiles, check this.

Cheers, mib

In both cases I used progressive refine and only the GPU.

I have the same GPU (GTX 1060) and confirm (roughly) the same times running your file unmodified:

Blender 2.79b: 4:43
Blender 2.80Beta: 5:35

Could this be related to 2.80 from the buildbot using CUDA 10 while 2.79b used CUDA 9.1?

I noticed that my own builds (Linux Mint) were significantly slower when compiled with CUDA 10 instead of CUDA 9.1 on a GTX 1080ti.

Could this be related to 2.80 from the buildbot using CUDA 10 while 2.79b used CUDA 9.1?

The buildbot is only using CUDA10 for turing, all other cards are still on 9.1 due to bugs in cuda10 for those cards.

However i’m pretty sure 2.79b was build using 8.61 so you may still be right that an older compiler may be doing a better job but someone has to sit down an test, could also be that due to all the changes in cycles since 2.79 there may have been a speed regression somewhere…

1 Like

Can you try the same test with buckets and small tile size of 16x16? Both with 2.79 (buildbot) and 2.80?

Turning off Progressive Refine and setting the tile size to 16x16, the time is 4:42 for both 2.80Beta and the latest 2.79 BuildBot. Note this is dramatically improved from the official 2.79b for this tile size. The estimated completion time was close to 50:00.

Unfortunately, I was not able to try GPU+CPU as the file crashed when I tried to render it with both CPU and GPU enabled (but I am using a 2.80 from a week ago.)
***Edit to add: the 2.79 BuildBot did run the GPU+CPU combo and gave a time of 3:08 for 16x16 tiles. (The CPU is a Rizen 5, 6-Core/12-Thread model at 3.2 GHz.)

For 256x256 tiles the times were:
2.79b (official): 3:56
2.79 BuildBot: 4:47
2.80Beta: 4:47

Rendering with my RTX 2070 I’m getting the following times:

256x256
2.80beta - 04:25.17
2.79 BuilldBot - 04:20.98

16x16
2.80beta - 04:25.09
2.79 BuildBot - 04:07.72

For look dev most of the cases the only thing that matters is the rendering performance without tiles. And as I see now this is a serious slowdown.

Robertbrian without wanting to derail this thread. I converted your original scene to Eevee. It took less than 3 seconds to render obviously not as accurate as Cycles but good enough for look dev and it’s noise free. See this post about light leak shadow in Eevee converted shadow test Eevee scene for image and Eevee scene file.

I have it somehow much worse with those pre-applied render settings,
it only utilizes 18% of the cpu, ~8% of the GPU (Ryzen 2700, GTX 1080TI with 416.94 driver) in 2.8.

Original settings
Blender 2.79b ~ 2.44.xx
Blender 2.8(2018-12-13 build) ~11:43.xx

Progressive Refine and tilesize set to 960x540
Blender 2.79b ~2.29.xx
Blender 2.8 ~2.38.xx

disabled Progressive Refine, 64x64
2.8 2:19.xx
disabled Progressive Refine, 32x32
2.8 1:52.xx

Edit some more tests with 2.8:
original settings but disabled Cycles Compute Device Cuda for AMD Ryzen
2:53:87
disabled Cycles Compute Device Cuda for AMD Ryzen and Tilesize set to 960x540
2:37:90

I figured out what was causing the slowdown in rendered preview. After turning off Reflective Caustics every currently available Blender versions render time will be the same.

Versions affected:

  • 2.79.7
  • 2.80 Beta
2 Likes