←back to thread

1045 points mfiguiere | 4 comments | | HN request time: 0.88s | source
Show context
sharts ◴[] No.39346565[source]
AMD fail to realize software toolchain is what makes nvidia great. AMD thinks the hardware is all that’s needed
replies(1): >>39346911 #
JonChesterfield ◴[] No.39346911[source]
Nvidia's toolchain is really not great. Applications are just written to step around the bugs.

ROCm has different bugs, which the application workarounds tend to miss.

replies(1): >>39350064 #
1. bornfreddy ◴[] No.39350064[source]
Yes. This is what makes Nvidia's toolchain, if not great, at least ok. As a developer I can actually use their GPUs. And what I developed locally I can yhen run on Nvidia hardware in the cloud and pay by usage.

AMD doesn't seem to understand that affordable entry-level hardware with good software support is key.

replies(1): >>39350387 #
2. JonChesterfield ◴[] No.39350387[source]
Ah yes, so that one does seem to be a stumbling block. ROCm is not remotely convinced that running on gaming cards is a particularly useful thing. HN is really sure that being able to develop code on ~free cards that you've got lying around anyway is an important gateway to running on amdgpu.

The sad thing is people can absolutely run ROCm on gaming cards if they build from source. Weirdly GPU programmers seem determined to use proprietary binaries to run "supported" hardware, and thus stick with CUDA.

I don't understand why AMD won't write the names of some graphics cards under "supported", even if they didn't test them as carefully as the MI series, and I don't understand why developers are so opposed to compiling their toolchains from source. For one thing it means you can't debug the toolchain effectively when it falls over, weird limitation to inflict on oneself.

Strange world.

replies(2): >>39354355 #>>39355240 #
3. sorenjan ◴[] No.39354355[source]
Maybe someone that's trying to use a GPU to solve a particular problem doesn't necessarily also have the time, energy, knowledge, or interest to also first 1) find out how to construct the toolchain, 2) build said toolchain, and 3) debug the toolchain. Just because you're a programmer writing code for physics simulations, image processing, AI models, or whatever, doesn't mean you also want to spend hours or days on getting your tools working before you can even start writing your own code. And then do it again when deploying on another computer.

And it's really not surprising that people, GPU programmers included, doesn't want to spend time and money on trying out unsupported hardware and software combinations when again, it's supposed to be a tool to get a job done. If I got some Phillips head screws I'm not reaching for a flat head screwdriwer even though it probably will work, and if it's the only thing I have I'll buy some Phillips head ones for the next project.

4. pjmlp ◴[] No.39355240[source]
Strage world is expecting we are all Gentoo users, that like to build our software like making fire with stones and sticks.

Then people act surprised CUDA was won the hearts of the scientific developer community, that rather spend their time actually doing research work.