This year, V-Ray 3.6 introduced the concept of GPU and CPU hybrid rendering. Using the same CUDA engine as their GPU renderer, hybrid rendering allows you to treat CPUs as though they were additional CUDA devices, maximising a machine’s rendering capabilities.
In real-world terms, this should allow you to accelerate the speeds of your local CUDA renders, and spread your batch renders out across a broader array of machines than previously possible. It’s easy to set up within V-Ray: simply select CUDA from the V-Ray options and check the processors you want to use. Most of the settings carry over from standard V-Ray, with GPU texture sampling being the most notable new addition to the variables.
So how does it compare? Rendering our YellowDog shader-ball scene locally, we discovered just whether this approach hits our expectations – read below to discover more . . .
Hardware: GeForce GT 740, Xeon 2.8GHz 4 Core.
|CPU||GPU||CPU + GPU|
|7min 57s||14min 42s||6min 52s|
So, hybrid rendering has shaved a minute off the CPU render times, making it about 13% faster. But this is only on my modest workstation where you can see that the CPU is doing the bulk of the work. As CUDA is primarily a GPU engine, what happens when you tap into some more GPU power?
Hardware: 2x GeForce GTX 1060, Xeon 3.7Ghz 8 Core.
|CPU||GPU||CPU + GPU|
As expected on the GPU node, it’s the GPUs doing the heavy lifting here, with the CPU only helping out a tiny amount. There’s still a speed improvement though which is not to be ignored, especially when you are pushing hundreds or thousands of renders through in one go.
How about trying with a CPU only node:
Hardware: 32 Core Xeon 2.6GHz, no usable GPU
|1 min 57s|
And once again we get the exact same result, with the 32 core Xeon doing a great job of pretending to be a GPU.
V-Ray CUDA Hybrid looks to be a great solution for studios looking to utilise both GPU and CPU render nodes to speed up render times. Ordinarily, the 32 Core Xeon and 2x GeForce 1080 nodes above wouldn’t have been able to run the same job, and that’s where the benefit of this technology lies – in spreading the load. However, before we get wowed by relative GPU performance it’s worth checking these results against the standard CPU render engine to get a bit of context.
Using the CPU engine in V-Ray and the same settings as within CUDA the following frame rendered in only 2min 40s on my workstation, 60% faster than with CUDA Hybrid, and the difference in quality is significant – textures are sharper, contrast is richer, and the whole image is less noisy. This goes to show that CUDA Hybrid is still very much a GPU renderer, and, as such, is better suited to studios looking to buff their GPU power with CPUs, rather than the other way around.
|CPU Engine||CUDA Hybrid Engine|