Live data from Hacker News

Alternative(s) to run CUDA on non-Nvidia hardware

hpcwire.com

71–80 of 82 posts

Re: Alternative(s) to run CUDA on non-Nvidia hardware

#71
post #67
post #41

Earlier quoted context omitted.

Do you see me complaining? Here is a tip, you don't always need to suffer from FOMO and get the very latest model card. In fact, contrary to the competition, one can play with CUDA even on laptops, go figure.

> In fact, contrary to the competition, one can play with CUDA even on laptops, go figure. This is the part people don't get. You can program cuda anywhere on any Nvidia card, unlike other companies' chips you don't need a data center gpu to have full programmability. It's been this way for over a decade

Yes, this is how they get students hooked on CUDA.

Re: Alternative(s) to run CUDA on non-Nvidia hardware

#73
post #56

These efforts to support CUDA on non-Nvidia hardware seem to me misguided. If all you want is to be able to easily use non-NVidia hardware then high level tools like PyTorch already let you do that (and torch.compile uses Triton for target-specific optimization). OTOH if you want to be programming close to the metal to achieve top performance then you are probably not using CUDA in the first place, and using some CUD…

We actually support NVIDIA hardware, too. In some benchmarks, SCALE beats nvcc, and we have compiler optimizations in the pipeline that will improve those numbers over time. > If all you want is to be able to easily use non-NVidia hardware then high level tools like PyTorch already let you do that Somewhat true, but, CUDA is significantly larger than PyTorch and there's more to Accelerated Computing than just those t…

I've played with your compiler. It's not very robust yet to production code that leans into all the libraries in the ecosystem. Solve that and you've got a killer app IMO.

Re: Alternative(s) to run CUDA on non-Nvidia hardware

#74

There's nothing wrong to run CUDA on non-Nvidia hardware. CUDA has an interface that is reasonably well-designed, well-documented/reverse-engineered, and battle-tested for decades. What we need is not to invent another interface just under the name of 'open standard', but to implement the same interface. ROCm is exactly doing this, and so are other hardware SDKs such as MooreThread and Alibaba T-Head.

The difference between ROCm and CUDA is that when a consumer GPU is released by nvidia it's supported for CUDA for about a decade (1xxx series cards just dropped last year). When a consumer GPU is released by AMD it's not supported by ROCm till about a year after release and then it's supported for about 3-4 years. With the RX 580 there were only 3.7 years after release before ROCm support was pulled. I bought mine a…

I was in graduate school for robotics when CUDA came out, and the consumer card support was critical to nvidia getting to where they are today.

High Performance Computing option A wants to set up a call with someone with the authority to spend the best part of six figures, which could maybe be part of a funding application within a year or two, if there's a strong enough case for it.

High Performance Computing option B recommends you put in an application for time at the national centre that doles out access in 15 minute increments after you outline your entire project to them.

Then along comes nvidia, with CUDA - they want a one-off payment of $100, and on the day CUDA came out, almost every CS department already had a few dozen of the cards in computers they already owned.

No huge outlay, no ongoing spending commitment, no permission or application process.

Re: Alternative(s) to run CUDA on non-Nvidia hardware

#75

Earlier quoted context omitted.

The difference between ROCm and CUDA is that when a consumer GPU is released by nvidia it's supported for CUDA for about a decade (1xxx series cards just dropped last year). When a consumer GPU is released by AMD it's not supported by ROCm till about a year after release and then it's supported for about 3-4 years. With the RX 580 there were only 3.7 years after release before ROCm support was pulled. I bought mine a…

I was in graduate school for robotics when CUDA came out, and the consumer card support was critical to nvidia getting to where they are today. High Performance Computing option A wants to set up a call with someone with the authority to spend the best part of six figures, which could maybe be part of a funding application within a year or two, if there's a strong enough case for it. High Performance Computing option…

Not to mention Nvidia loans out their engineers to academic computational software teams to help build CUDA ports.

Re: Alternative(s) to run CUDA on non-Nvidia hardware

#76

Earlier quoted context omitted.

It absolutely isn't. After having spent 5 days not getting anything done in Vulkan, and being able to implement that same thing in a single day in Cuda (no prior experience in either API), I decided to never ever use Vulkan. It's a hopelessly overengineered API that is in dire need of a successor. I may give it another try once it does not require a wrapper before it is remotely usable. I.e., once it has a single-lin…

Skill issue. Vulkan is intended to be unopinionated around those things. If you want defaults then use a wrapper. P.s. devices and queues are generally ordered for simple programs you can just pick the 1st one.

Of course, which is why no one is racing to adopt Vulkan, and since last year they have started multiple activities to try to turn Vulkan around to be usable for everyone, not only AAA game engines experts.

Do you want the Vulkanised 2025 and 2026 talks where this is discussed and acknowledged as a problem for Vulkan adoption?

Re: Alternative(s) to run CUDA on non-Nvidia hardware

#77

There's nothing wrong to run CUDA on non-Nvidia hardware. CUDA has an interface that is reasonably well-designed, well-documented/reverse-engineered, and battle-tested for decades. What we need is not to invent another interface just under the name of 'open standard', but to implement the same interface. ROCm is exactly doing this, and so are other hardware SDKs such as MooreThread and Alibaba T-Head.

The difference between ROCm and CUDA is that when a consumer GPU is released by nvidia it's supported for CUDA for about a decade (1xxx series cards just dropped last year). When a consumer GPU is released by AMD it's not supported by ROCm till about a year after release and then it's supported for about 3-4 years. With the RX 580 there were only 3.7 years after release before ROCm support was pulled. I bought mine a…

Another crucial difference is: ROCm is open source, while cuda isn't. Yes it's tough to port things to newer gpus, but in theory people did it (therock spear heading the ROCm patch for strix halo before the offical support)

Re: Alternative(s) to run CUDA on non-Nvidia hardware

#80
post #56

Earlier quoted context omitted.

We actually support NVIDIA hardware, too. In some benchmarks, SCALE beats nvcc, and we have compiler optimizations in the pipeline that will improve those numbers over time. > If all you want is to be able to easily use non-NVidia hardware then high level tools like PyTorch already let you do that Somewhat true, but, CUDA is significantly larger than PyTorch and there's more to Accelerated Computing than just those t…

I've played with your compiler. It's not very robust yet to production code that leans into all the libraries in the ecosystem. Solve that and you've got a killer app IMO.

We'd love to know which libraries your production code falls over on!

Feel free to ping us on discord (https://discord.com/invite/KNpgGbTc38) or you can find my e-mail in my profile if that's preferable

Post reply on HN