Which device are the tasks running on?

Moderators: Site Moderators, FAHC Science Team

muziqaz
Posts: 1490
Joined: Sun Dec 16, 2007 6:22 pm
Hardware configuration: 9950x, 7950x3D, 5950x, 5800x3D
7900xtx, RX9070, Radeon 7, 5700xt, 6900xt, RX 550 640SP
Location: London
Contact:

Re: Which device are the tasks running on?

Post by muziqaz »

Ask nVidia, not AMD ;)
AMD is a hippy here
FAH Omega tester
Image
Peter_Hucker
Posts: 369
Joined: Wed Feb 16, 2022 1:18 am
Hardware configuration: Ryzen 9 3900XT: 24 cores, 128GB RAM, 1TB NVME, 4TB HDD, R9 Nano (Fiji) GPU.
Ryzen 9 3900X: 24 cores, 64GB RAM, 250GB NVME.
Xeon X5650 dual CPU server: 24 cores, 64GB RAM, 250GB NVME, R9 290(Hawaii) GPU.
Xeon X5650 dual CPU server: 24 cores, 64GB RAM, 250GB NVME.
I3-6100: 4 cores, 32GB RAM, 250GB NVME, 2 of R9 2980X (Tahiti) GPUs.
5 other smaller computers.
Location: Scotland

Re: Which device are the tasks running on?

Post by Peter_Hucker »

arisu
Posts: 212
Joined: Mon Feb 24, 2025 11:11 pm

Re: Which device are the tasks running on?

Post by arisu »

muziqaz wrote: Sun Apr 06, 2025 2:14 pm nVidia does not support HIP. But HIP is CUDA code recompiled for AMD hardware I believe
It is a distinct runtime API from CUDA, but hipify can do a very efficient one-to-one conversion from CUDA to HIP because it supports all the same features. Unlike OpenCL where there are automatic transpilers but they are not smart enough to rewrite CUDA-isms in OpenCL efficiently.
Peter_Hucker wrote: Sun Apr 06, 2025 2:36 pm From the AMD website:

"The Heterogeneous-computing Interface for Portability (HIP) is a C++ runtime API and kernel language that lets you create portable applications for AMD and NVIDIA GPUs from a single source code."

https://rocm.docs.amd.com/projects/HIP/ ... index.html
It works fine on Nvidia but FAH does not use it.
Peter_Hucker
Posts: 369
Joined: Wed Feb 16, 2022 1:18 am
Hardware configuration: Ryzen 9 3900XT: 24 cores, 128GB RAM, 1TB NVME, 4TB HDD, R9 Nano (Fiji) GPU.
Ryzen 9 3900X: 24 cores, 64GB RAM, 250GB NVME.
Xeon X5650 dual CPU server: 24 cores, 64GB RAM, 250GB NVME, R9 290(Hawaii) GPU.
Xeon X5650 dual CPU server: 24 cores, 64GB RAM, 250GB NVME.
I3-6100: 4 cores, 32GB RAM, 250GB NVME, 2 of R9 2980X (Tahiti) GPUs.
5 other smaller computers.
Location: Scotland

Re: Which device are the tasks running on?

Post by Peter_Hucker »

"transpiler" and "CUDA-isms" - I must remember those terms :-) I like.
muziqaz
Posts: 1490
Joined: Sun Dec 16, 2007 6:22 pm
Hardware configuration: 9950x, 7950x3D, 5950x, 5800x3D
7900xtx, RX9070, Radeon 7, 5700xt, 6900xt, RX 550 640SP
Location: London
Contact:

Re: Which device are the tasks running on?

Post by muziqaz »

I don't see the point of anyone using HIP over CUDA.
If you already have Nvidia GPU, your code is CUDA, unless you are some sort of masochistic enthusiast, or someone planning to ditch Nvidia, which never happens these days
FAH Omega tester
Image
Peter_Hucker
Posts: 369
Joined: Wed Feb 16, 2022 1:18 am
Hardware configuration: Ryzen 9 3900XT: 24 cores, 128GB RAM, 1TB NVME, 4TB HDD, R9 Nano (Fiji) GPU.
Ryzen 9 3900X: 24 cores, 64GB RAM, 250GB NVME.
Xeon X5650 dual CPU server: 24 cores, 64GB RAM, 250GB NVME, R9 290(Hawaii) GPU.
Xeon X5650 dual CPU server: 24 cores, 64GB RAM, 250GB NVME.
I3-6100: 4 cores, 32GB RAM, 250GB NVME, 2 of R9 2980X (Tahiti) GPUs.
5 other smaller computers.
Location: Scotland

Re: Which device are the tasks running on?

Post by Peter_Hucker »

Because someone like Folding could write in HIP only and not have to bother with AMD/Nvidia considerations.
muziqaz
Posts: 1490
Joined: Sun Dec 16, 2007 6:22 pm
Hardware configuration: 9950x, 7950x3D, 5950x, 5800x3D
7900xtx, RX9070, Radeon 7, 5700xt, 6900xt, RX 550 640SP
Location: London
Contact:

Re: Which device are the tasks running on?

Post by muziqaz »

Peter_Hucker wrote: Mon Apr 07, 2025 7:29 am Because someone like Folding could write in HIP only and not have to bother with AMD/Nvidia considerations.
Yeah, no.
CUDA has been in fah waaay before HIP. Hell, HIP is still not out for AMD. So, no one will ditch perfectly working CUDA, which is constantly improved and looked after by well funded Nvidia software team, and go with HIP, which I had to beg OpenMM Devs to support, and which is developed and looked after hopes and dreams of upper management of AMD.
Let's be real here, please.
FAH Omega tester
Image
Peter_Hucker
Posts: 369
Joined: Wed Feb 16, 2022 1:18 am
Hardware configuration: Ryzen 9 3900XT: 24 cores, 128GB RAM, 1TB NVME, 4TB HDD, R9 Nano (Fiji) GPU.
Ryzen 9 3900X: 24 cores, 64GB RAM, 250GB NVME.
Xeon X5650 dual CPU server: 24 cores, 64GB RAM, 250GB NVME, R9 290(Hawaii) GPU.
Xeon X5650 dual CPU server: 24 cores, 64GB RAM, 250GB NVME.
I3-6100: 4 cores, 32GB RAM, 250GB NVME, 2 of R9 2980X (Tahiti) GPUs.
5 other smaller computers.
Location: Scotland

Re: Which device are the tasks running on?

Post by Peter_Hucker »

When someone comes to write a new program, they will obviously want to write it only once. So they will obviously choose something which works on as many platforms as possible to get the most work units done. This has to be HIP. Sure, Nvidia will run OpenCL, but apparently not as efficiently.
muziqaz
Posts: 1490
Joined: Sun Dec 16, 2007 6:22 pm
Hardware configuration: 9950x, 7950x3D, 5950x, 5800x3D
7900xtx, RX9070, Radeon 7, 5700xt, 6900xt, RX 550 640SP
Location: London
Contact:

Re: Which device are the tasks running on?

Post by muziqaz »

Peter_Hucker wrote: Mon Apr 07, 2025 8:23 am When someone comes to write a new program, they will obviously want to write it only once. So they will obviously choose something which works on as many platforms as possible to get the most work units done. This has to be HIP. Sure, Nvidia will run OpenCL, but apparently not as efficiently.
Sigh, no one in their right mind in current market will choose HIP over CUDA for Nvidia.
They'd rather implement CUDA first, ignoring AMD completely or they gonna implement CUDA ignoring AMD and leaving it for later when they have some spare time.
CUDA has been in development for over a decade, it is feature rich and well supported by Nvidia who seem to have a plan in place for it. It is being developed by software guys who have been with CUDA for very very long time.
HIP has been developed for 3 years, it is still in development and is trying to catch up to CUDA and is still quite some distance away from it. It is being developed a small group of developers who have just been hired for it. AMD upper management only very recently realised that HIP needs extra attention.
Now looking at these two scenarios, do you still think anyone (besides diehard fanboys or mental patients) will pick HIP over CUDA for nVidia GPUs?
FAH Omega tester
Image
Peter_Hucker
Posts: 369
Joined: Wed Feb 16, 2022 1:18 am
Hardware configuration: Ryzen 9 3900XT: 24 cores, 128GB RAM, 1TB NVME, 4TB HDD, R9 Nano (Fiji) GPU.
Ryzen 9 3900X: 24 cores, 64GB RAM, 250GB NVME.
Xeon X5650 dual CPU server: 24 cores, 64GB RAM, 250GB NVME, R9 290(Hawaii) GPU.
Xeon X5650 dual CPU server: 24 cores, 64GB RAM, 250GB NVME.
I3-6100: 4 cores, 32GB RAM, 250GB NVME, 2 of R9 2980X (Tahiti) GPUs.
5 other smaller computers.
Location: Scotland

Re: Which device are the tasks running on?

Post by Peter_Hucker »

If I was working for a project and I was writing a new program for crowd computing, I'd want to write it only once to save time and money, and get as many volunteers crunching as possible. There are lots of AMDs out there, why would I want to ignore them and get only half the work achieved? I want to use a program which will run on everything. So my choices are simply OpenCL or HIP. From what you've said, I gather HIP is more efficient than OpenCL.
arisu
Posts: 212
Joined: Mon Feb 24, 2025 11:11 pm

Re: Which device are the tasks running on?

Post by arisu »

Peter_Hucker wrote: Mon Apr 07, 2025 9:19 am If I was working for a project and I was writing a new program for crowd computing, I'd want to write it only once to save time and money, and get as many volunteers crunching as possible. There are lots of AMDs out there, why would I want to ignore them and get only half the work achieved? I want to use a program which will run on everything. So my choices are simply OpenCL or HIP. From what you've said, I gather HIP is more efficient than OpenCL.
Writing it in CUDA once and then using hipify to convert it into HIP would be better. Then if HIP goes tits up the only thing of value you lose is AMD devices. But if you write in HIP and HIP goes tits up, you lose everything.
Peter_Hucker
Posts: 369
Joined: Wed Feb 16, 2022 1:18 am
Hardware configuration: Ryzen 9 3900XT: 24 cores, 128GB RAM, 1TB NVME, 4TB HDD, R9 Nano (Fiji) GPU.
Ryzen 9 3900X: 24 cores, 64GB RAM, 250GB NVME.
Xeon X5650 dual CPU server: 24 cores, 64GB RAM, 250GB NVME, R9 290(Hawaii) GPU.
Xeon X5650 dual CPU server: 24 cores, 64GB RAM, 250GB NVME.
I3-6100: 4 cores, 32GB RAM, 250GB NVME, 2 of R9 2980X (Tahiti) GPUs.
5 other smaller computers.
Location: Scotland

Re: Which device are the tasks running on?

Post by Peter_Hucker »

If the conversion is still just as efficient as writing it natively, then yes, good idea.
arisu
Posts: 212
Joined: Mon Feb 24, 2025 11:11 pm

Re: Which device are the tasks running on?

Post by arisu »

Yes, the hipify conversion is just as efficient as using the native CUDA. Unlike a direct conversion to OpenCL, where lots of performance is lost.
Post Reply