Understanding V-Ray's hybrid Rendering

Overview and terminology

The V-Ray GPU renderer can leverage CPU cores by running its CUDA engine on the CPU, in what is called CUDA-x86 mode. In also being CUDA, V-Ray GPU can run its CUDA engine on the GPU in conjunction with it running on the CPU, allowing every processor in the computer to speed up rendering. The industry has nicknamed this “hybrid” or “XPU” rendering, and is also what is meant by “total system performance”.

When using both CUDA and CUDAx86 modes (aka hybrid GPU+CPU or XPU) the contribution of the CPU is similar to that of adding another (typically smaller) GPU to a multi-GPU configuration, boosting the performance of interactive rendering as well as final rendering.

To get the full performance of your system(hybrid rendering) simply enable the C++/CPU device from the list of CUDA devices(default behavior in V-Ray 6 and later).

Hm326SUPdQ.png

The standalone device selector tool could be used to set your rendering devices(or from the UI in your host DCC):

3Ds Max: C:\ProgramData\Autodesk\ApplicationPlugins\VRay3dsMax2024\bin

Maya: C:\Program Files\Chaos Group\V-Ray\Maya 2024 for x64\maya_vray\bin

 

Note: V-Ray GPU hybrid rendering(CPU+GPU) as well as CUDA X86 mode is not the same as the standard V-Ray renderer, and the two engines will continue to remain separate. 

 

Testing and benchmarks

We benchmarked 4 production scenes from our users. For these scenes, the addition of the CPU device helped reduce render times by 21% to 34%. It is a welcome speed boost, rather than leaving the CPU idle.
The RTX engine doesn’t use hybrid rendering for technical reasons, we added the results to the graphs. In most cases using the total system performance(CUDA + CUDA-x86) is faster than using the RTX engine.

 

MG0694YwPg.png

The CPU used is Ryzen 9 595X 16 Cores, it is one of the most popular consumer CPUs in the market at the moment. The GPU used is the RTX 3090 24 GB Founders Edition, not connected to a monitor.

 

The CUDA-x86 mode supports all features of V-Ray GPU and delivers perceptually identical results. If you have a powerful workstation you can take advantage of all its computing power. Nothing is left idle. CPUs with very high core counts (e.g., an AMD Threadripper) can often rival the speed of high-end GPUs as shown in the following graph:

Screenshot 2024-04-11 095412.png

Moreover, if you run out of GPU memory you can still render using CUDA-x86 mode using your system memory, and paging is supported. It is possible to use existing CPU farms to render GPU scenes, easing the transition for artists and studios. 

The CUDA-x86 mode doesn’t require any special drivers nor Kernel compilation, you can use Cuda X86 mode without having Nvidia drivers installed or even without a GPU in your machine.

 

Note: While V-Ray GPU Hybrid rendering can use the CPUs and GPUs simultaneously, CPU cores and GPU cores are not the same. For example, a GPU with 2560 cores is not simply 320 times faster than an 8-core CPU. To determine the actual speed difference, check our V-Ray benchmark results for real-world benchmark comparisons. 

 

Note: the CUDA-x86 mode performance scales nearly linearly across CPU cores and clock speed, including M1, M2 & M3 processors from Apple. 

 

Was this article helpful?
1 out of 1 found this helpful