Cycles much worse performance with RTX cards

Thanks for your experience and the tips Markus!

What I’ve tried so far:

  • Windows 10 1803 and 1809
  • Different drivers
  • With and without DDU
  • More Blender 2.80 and 2.79 versions

How do you get the Vega64 to run properly on Linux (Mint Cinnamon in my case)? Everyone told me to go AMD because they were natively supported by the Linux, but I missed how that didn’t mean OpenCL support which is crucial to me. I’m a complete Linux noob.
Currently rendering on 8 cores.
Currently wishing I went for Threadripper instead.

You can just install the official driver normally. You have to edit a file to make it believe it’s vanilla Ubuntu, that’s all (version number from 18.04 to 19): https://www.reddit.com/r/linuxmint/comments/986ncb/failed_to_install_latest_amd_drivers_on_mint_19/

Ah, yes. As bliblubli describes you are out on an adventure when trying to use opencl with any thing else than Ubuntu 18.04. My system was built from a 18.04 server image so I could use the official drivers.
That is another reason I switched to NVIDIA. I am rebuilding my system to be Arch based and there are no issues with the drivers.

There might be something about the RTX 2060 that causes this, which would require a change to the Cycles kernels? I haven’t see this kind of slow down with my 2070 and when I compare it to my old 980 it does very well (about 2X as fast) YMMV.

As far a Linux goes, Nvidia is the only way to go in my opinion. I haven’t had an issue with the drivers for many years now, AMD drivers I had problems with and have heard of other people having issues too. Although that was about 8 years ago, so again YMMV. :smiley:

If I understand correctly there is no slow down with the 2070 under Cycles? On Windows?

Would you like to make a test with the scene I used? Uploaded it again: https://ufile.io/gfqjy

Today I did the Redshift benchmark and the numbers is quite the same as other 2060’s (15min 7sec).

I don’t have a 1070 to compare, just my 980 and the 2070 much faster than it. I’m on Linux (Linux Mint 19), so it probably will not be a good test, but I can give it a try. I’m assuming this is on 2.80?

I mean only with the 2070 and 2.80. But all of the currently available Blender versions have the same speed with my 2060.

Maybe I can give a try with a Linux. I don’t think there is a much difference between 2060 and a 2070 on the drivers level. Which distribution is the best suitable for 3D right now? Do I need to install the driver for my 2060 manually like example on Mint?

I’m on a dual boot system. I will give your file a shot. Tomorrow, it’s well after midnight where I live.

Here are my render times, I also added in the 980 for a reference.

Progressive Refine:
RTX 2070 - 5:10.13
GTX 980 - 6:39.77

Tiled:
RTX 2070 - 4:23.10
GTX 980 - 6:10.40

It does appear slow, I suspect that the devs will need to optimize the kernels for the RTX cards.

Thank you for your time Grimm! It is also a lot slower just like mine.

Here is my summary: based on previous benchmarks the render time with the RTX 2060 and progressive refine should be around 2min 55sec without the RT cores of course. But since 2.79b there was already a 20% slowdown because of the reflective caustics (see: Slower Cycles GPU in Blender 2.8 Beta). So the estimated final rendering time in fact should be around 2min 20sec.

Just for comparison: I did a benchmark with Redshift 2.6.32 demo and the render time was (brute force) 2min 22sec. Note that under Redshift there is no reflective caustics with progressive rendering. I think at the same time Redshift will get a few of optimization soon and will be faster.

What I completely can’t understand:

Many people said it is, but Cycles doesn’t should be slow at all - see the render times above or like example there is E-Cycles. But to time to time Cycles will be just slower and slower approaching 2.80 stable. Shouldn’t it be the opposite? I don’t think the devs can’t have a single RTX card. I think the overall communication is misleading like example because of this: https://twitter.com/tonroosendaal/status/1064879909351378949

You can gain a slight speed increase by turning off Hair and Hair BVH too. In case anyone is keeping an eye on this thread that doesn’t have an RTX: A 1080Ti SC on Windows takes 1m 58s to render robertbrian’s light_bounces blend with 16x16 tiles(best size vs. speed I found).

So I finally got around to quickly test your scene on an RTX 2070 in Windows 10 with 2.8 from 2nd of march.
Unfortunately, I have to say that I also have these high render times.

5:33.24 progressive

So this would match your 1060. How strange.

While it’s nice that you are testing with other render engines would you mind to render BMW and classroom on your 1060? I’d be surprised if your 1060 is also up to par with our 2070s there. I just want to see, if there may be some corner case about your file, that is slowing down RTX cards.

First of all thank you for your time Markus too!

Here are the render times with 2.80.45:

BMW scene

GTX 1060 - 2:51
RTX 2060 - 1:47

Class room scene

GTX 1060 - 8:05 without post effects, 9:42 with post effects
RTX 2060 - 4:53 without post effects, 6:22 with post effects

1 Like

Aha, there is what I already expected.

I don’t have the exact times with me right now but BMW is around 1:20 m and classroom around 5 minutes I believe. Will check later.

But that seems to confirm that there is something inherent to your scene that is slowing down RTX cards. I think we should further investigate.
You already did a bug report or checked if there is one? I have no time at hand right now, so…

I updated my previous reply with the results of my RTX 2060.

So these numbers looks way better to me. I didn’t report the bug until now, but I will tomorrow at the latest.

And now what do you think? It’s very strange do, but to be honest I realized earlier most of the cases the demo scenes works just fine.

I rendered out the demo scenes and also did some tests with Octane:

BMW scene
RTX 2070 - 1:13.50

Classroom scene
RTX 2070 - 5:31.76 (4:32.45 without post processing)

Octane test of your file, I wasn’t real sure on how to convert it to match the samples per pixel

1024 SPP - 00:53.64
4096 SPP - 3:22.09

All I did to your test file was to convert the material over to a Octane glossy mat and I added a Octane diffuse emission texture to the area light.

Just as I explained would likely happen in the third post to this thread. Not a bug. The test scene you made is not a solid benchmark because it’s too light.

So you just say because my scene is too light, then Cycles can handle it slower. That doesn’t make a sense to me. The opposite must happen.

In every case a render engine must be to handle all the things the same, especially when a scene is not to heavy just like here.

But from what perspective? In this scene:

  • The rays coming from outside the box
  • There are lots of bounces
  • Rough specular reflections

I explained that above as well. The 1060 has a FASTER clock speed than the 2060. In a proper bench test, you wouldn’t compare clock speeds directly because you have to consider how fast the memory is piping information to the core. In your demo scene, however, memory usage is so low, that the part of the 2060 that vastly outshines the 1060 - the memory speed and bandwidth - isn’t properly being stressed. Result: it comes down to clock speed, where, again, the 1060 is faster.

This is why all test scenes are heavy in this regard. If stressing the system didn’t matter, then we could just do all our benchmarking with a render of a simple cube with high samples.

GTX 1060
RTX 2060

Edit: And that’s not to say Blender couldn’t stand to be optimized for the card (or vise versa). It is a new card, after all. I’m just saying look at the numbers. They don’t lie. One has a faster GPU clock. The other has a faster memory clock.