AMD vs. nvidia performance

With my move from Manjaro to EndeavourOS I also moved from NVIDIA GPU to AMD GPU. I have been using NVIDA for years without any issue. But i thought it is time to try something new.

My main use case is opencl because I do RAW photo editing with darktable. And the darktable performance is significantly boosted by opencl. I have a standardized darktable benchmark which I perform every once in a while with new kernels etc. to see if performance is impacted. You can find details about this benchmark in the old Manjaro forum:

My NVIDIA card was a “MSI GeForce GTX 1660 Ti GAMING X 6G”. As an AMD replacement I picked a “6GB Sapphire Radeon RX 5600XT Pulse BE GDDR6”. They should have a comparable performance although the AMD card is cheaper than the NVIDIA.

Here are my darktable results. Each result is the average of minimum 6 runs and variances of less than 0.03 s.

opencl deactivated. All on CPU (Ryzen 7 3700x):  9,7 s
with NVIDIA GTX 1660 Ti and opencl:              2,7 s
with AMD RX 5600XT and opencl:                   2,2 s

I am positively surprised. I did not expect that but the AMD card is significantly faster with darktable.


NVIDIA is more focussed on CUDA (and pushing it hard for AI/ML/CV etc.) so that might well explain it.


But ain’t CUDA technically responsible for their own specification of OpenCL?

As Jonathon said, nVidia profits immensely from CUDA.
I don’t know whether darktable supports it, but I would expect nVidia to be faster.

Tip: try running a Blender benchmark as well and compare the results.

Without CUDA, as far as my tests gone in the past, OpenCL wouldn’t work at all on Nvidia :slightly_smiling_face:
But maybe it depends on program

1 Like

Interesting results, thanks for sharing! It’s getting about that time for me to upgrade my video card as well, and I’m looking to jump ship to AMD, so this is encouraging.

Which method did you use to install opencl for amd?
Mesa? AMDGPU Pro or Rocm?

I would be very interested to know the answer.

Unfortunately for me, I need opencl with Image support which mesa doesn’t provide. AMDGPU Pro keeps dropping OpenCL support for old(-ish) GPU, like Polaris (RX 580). Don’t know much about Rocm.

Any input would be appreciated.

I use package opencl-amd 20.50.1234664-5
This downloads the pro driver and extracts the opencl driver from it.

As many people do not know: opencl for AMD is closed source, similar to NVIDIA.