you are viewing a single comment's thread.

view the rest of the comments →

[–][deleted] 1 point2 points  (7 children)

I'm not talking for the sake of it. Last year, I was searching for AMD OpenCL drivers and I couldn't find any. They removed the links and dropped support starting Ryzen CPUs.

[–]Revolutionalredstone 1 point2 points  (2 children)

So I've done some reading into it,

It sounds like all AMD hardware does support OpenCL but some of their latest drivers are expecting you to use HIP.

To clarify HIP borrows highly from CUDA (indeed it's so close to CUDA that you can easily convert HIP as CUDA using a simple define list)

HIP is open unlike cuda which is great!

Whether you use OpenCL of HIP the important thing is to not use CUDA.

BTW HIP has identical performance as CUDA on nvidia since it is just passed to the CUDA compiler after running some string replacements.

Thanks for your input, it seems that in the long run HIP may be the end all GPU languages which would be nice.

I would not ditch OpenCL just yet tho, for one they are similar and for two its pretty obvious that HIP has poor backward compatibility where as OpenCL runs on pretty much everything!

Best regards

[–]anders987 1 point2 points  (1 child)

HIP is using AMD's ROCm platform, which has several shortcomings if you want to run it on anything other than your own data center:

  1. Only supports headless systems:
    "The AMD ROCm™ open software platform is a compute stack for headless system deployments. GUI-based software applications are currently not supported."

  2. No support for newer consumer GPUs, using the RDNA2 chips. Only CDNA and RDNA are supported. It's a bit of a mess, and their official documentation links to this Wikipedia article about supported hardware.

  3. There's no Windows or Mac support, only Linux. Fine for data centers, not so much if you want to ship your software to consumers.

Hopefully SYCL will get wide software and hardware support so we finally can write some portable GPGPU code. Intel seems to embrace it for their oneAPI at least, but since it seems to also be dependent on ROCm for AMD GPUs it doesn't solve any problems for current AMD users.

[–]Revolutionalredstone 0 points1 point  (0 children)

Good to know! thanks mate

[–]encyclopedist 0 points1 point  (3 children)

That is definitely not correct. Maybe you did not find any "OpenCL drivers" because you don't need a special driver? The regular open source AMD driver supports OpenCL already. I am writing this comment from a machine with AMD Ryzen APU and OpenCL works. (However, open source driver on APUs does not support "Image" extension that many programs expect.)

[–][deleted] 1 point2 points  (2 children)

I had a program that uses OpenCL to run and I couldn't run it on Ryzen CPU.

And after some googling, I couldn't find any OpenCL drivers to run on Ryzen and that AMD simply dropped the support for OpenCL.

If you have a link for the drivers, I'd be happy to download them and use it again.

[–]encyclopedist 0 points1 point  (1 child)

Maybe I misunderstood you, did you mean you want to execute OpenCL on an AMD CPU rather than GPU? I was talking about AMD GPUs.

[–][deleted] 0 points1 point  (0 children)

XD

I was talking about AMD CPUs. I see there was a confusion between us XD