On Sun, May 28, 2017 at 01:39:58PM +0200, Laslo Hunhold wrote: > On Sat, 27 May 2017 12:34:14 +0000 > [email protected] wrote: > > On GPU shaders, no salvation, a SPIR-V compiler has to be written > > from scratch and some mistakes in the specifications made it far from > > trivial. But it's far from the abyssal work needed on the web front > > (to keep complexity in check, you must pre-build the vector control > > paths from blocks). > > I honestly don't have a lot to do with GPU shaders. What's wrong with > OpenCL?
It's about vulkan/spir-v, the "light" replacement of opengl/opencl (dota2 has already a vulkan build). The shader language is spir-v and it's close to a vectorized compiler intermediate language, there is no more C/c++ like languages "in the specs". That allows abysmal complexity differences in the driver stack. The maintenance of the complexity of C/c++ like languages is off-loaded to the application developers. In the open source world, namely in mesa, the amd spir-v compiler is still c++ and still using llvm... I start to wonder if unrolling llvm c++ code related to the amd spir-v compiler would be something reasonable as a time-to-time one man job (wild guess: it's not). -- Sylvain
