Page 1 of 1

Noise reduction CUDA vs OpenCL

PostPosted: Fri Sep 28, 2018 4:07 am
by Jake Reeder
I've heard that digital noise reduction on Resolve works better on CUDA than OpenCL. Does anyone have info on this?

Re: Noise reduction CUDA vs OpenCL

PostPosted: Fri Sep 28, 2018 8:18 am
by Rohit Gupta
This is not true at all. You should get identical results on CUDA/OpenCL/Metal.

Re: Noise reduction CUDA vs OpenCL

PostPosted: Fri Sep 28, 2018 2:56 pm
by shebbe
Think he meant in terms of performance.
I have no idea tbh. Why not test it out.

Re: Noise reduction CUDA vs OpenCL

PostPosted: Fri Sep 28, 2018 6:34 pm
by MishaEngel
shebbe wrote:Think he meant in terms of performance.
I have no idea tbh. Why not test it out.


FP32 is FP32 no matter if you call it CUDA, OpenCL, Metal or Vulkan.

Re: Noise reduction CUDA vs OpenCL

PostPosted: Fri Sep 28, 2018 9:20 pm
by Cary Knoop
CUDA is typically faster than OpenCL.
OpenCL is a more generic parallel framework than CUDA.

Re: Noise reduction CUDA vs OpenCL

PostPosted: Fri Sep 28, 2018 10:21 pm
by MishaEngel
Cary Knoop wrote:CUDA is typically faster than OpenCL.
OpenCL is a more generic parallel framework than CUDA.


Cuda and OpenCL are programming languages.

When you optimize both codes to the max. you get the same results.

And according to Rohit's reaction that is what BMD did with Resolve.

Looking at our own results and those of Slashcam and puget I have to agree for atleast 99% with Rohit.

Re: Noise reduction CUDA vs OpenCL

PostPosted: Sat Sep 29, 2018 7:12 am
by Hendrik Proosa
MishaEngel wrote:Cuda and OpenCL are programming languages.
When you optimize both codes to the max. you get the same results.

You might, you might not. In addition to code there is also the hardware and driver factor which no amount of optimizing from developer side can take away. As Cary said, OpenCL is more generic, at least it tries to be. CUDA is proprietary to nVidia, which allows more hardware specific code and optimizing, and while one can argue that AMD cards utilize OpenCL as good as nVidia does CUDA, it is not always the case. Yes, math is math, but this does not take into account that math does not do itself, it must be done on certain hardware with specific characteristics. Otherwise one might also argue that all cpu-s with same clock speed are equal because int is an int, right? Not so, one might be able to do vectorized math on ints at the same time as floats, other might not, with GPUs it is the same. If noise reduction made use of new rtx engine in nVidia gpus, no amount of optimization will make same thing happen in opencl on amd cards.

Re: Noise reduction CUDA vs OpenCL

PostPosted: Sat Sep 29, 2018 8:40 am
by Daz Wood
Hendrik Proosa wrote:
MishaEngel wrote:Cuda and OpenCL are programming languages.
When you optimize both codes to the max. you get the same results.

You might, you might not. In addition to code there is also the hardware and driver factor which no amount of optimizing from developer side can take away. As Cary said, OpenCL is more generic, at least it tries to be. CUDA is proprietary to nVidia, which allows more hardware specific code and optimizing, and while one can argue that AMD cards utilize OpenCL as good as nVidia does CUDA, it is not always the case. Yes, math is math, but this does not take into account that math does not do itself, it must be done on certain hardware with specific characteristics. Otherwise one might also argue that all cpu-s with same clock speed are equal because int is an int, right? Not so, one might be able to do vectorized math on ints at the same time as floats, other might not, with GPUs it is the same. If noise reduction made use of new rtx engine in nVidia gpus, no amount of optimization will make same thing happen in opencl on amd cards.
what is confusing me, is the rtx engine an extension of CUDA then?

Re: Noise reduction CUDA vs OpenCL

PostPosted: Sat Sep 29, 2018 8:55 am
by Jean Claude
Is RTX Engine in CUDA SDK? Not sure... for me. :)

Re: Noise reduction CUDA vs OpenCL

PostPosted: Sat Sep 29, 2018 9:29 am
by Carsten Sellberg
Hi.

Tom Petersen from nVidea confirm in this YouTube at 12:57 that the Tensor cores are exposed to to CUDA:



Regards Carsten.

Re: Noise reduction CUDA vs OpenCL

PostPosted: Sat Sep 29, 2018 9:59 am
by Jean Claude
Carsten,

RTX is not in NVIDIA CUDA Toolkit SDK
thank you for reading the Release Notes
https://docs.nvidia.com/cuda/cuda-toolk ... index.html

RTX is in the NVIDIA RTX ™ platform
https://developer.nvidia.com/rtx

It is very much not the same thing. :)