▲ | ajross 6 days ago | |||||||||||||||||||||||||||||||
There is absolutely an xkcd 927 feel to this. But that's not the fault of the new abstraction layers, it's the fault of the GPU industry and its outrageous refusal to coordinate on anything, at all, ever. Every generation of GPU from every vendor has its own toolchain, its own ideas about architecture, its own entirely hidden and undocumented set of quirks, its own secret sauce interfaces available only in its own incompatible development environment... CPUs weren't like this. People figured out a basic model for programming them back in the 60's and everyone agreed that open docs and collabora-competing toolchains and environments were a good thing. But GPUs never got the memo, and things are a huge mess and remain so. All the folks up here in the open source community can do is add abstraction layers, which is why we have thirty seven "shading languages" now. | ||||||||||||||||||||||||||||||||
▲ | jcranmer 6 days ago | parent | next [-] | |||||||||||||||||||||||||||||||
CPUs, almost from the get-go, were intended to be programmed by people other than the company who built the CPU, and thus the need for a stable, persistent, well-defined ISA interface was recognized very early on. But for pretty much every other computer peripheral, the responsibility for the code running on those embedded processors has been with the hardware vendor, their responsibility ending at providing a system library interface. With literal decades of experience in an environment where they're freed from the burden of maintaining stable low-level details, all of these development groups have quite jealously guarded access to that low level and actively resist any attempts to push the interface layers lower. As frustrating as it is, GPUs are actually the most open of the accelerator classes, since they've been forced to accept a layer like PTX or SPIR-V; trying to do that with other kinds of accelerators is really pulling teeth. | ||||||||||||||||||||||||||||||||
▲ | yjftsjthsd-h 6 days ago | parent | prev [-] | |||||||||||||||||||||||||||||||
In fairness, the ability to restructure at will probably does make it easier to improve things. | ||||||||||||||||||||||||||||||||
|