Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

You seem knowledgeable, and I’m possibly going back into a GPGPU project after many years out of the game, so: overall do you see a good future for filling these compute-related gaps in the WebGPU API? Really I’m wondering whether wgpu is an okay choice versus raw Vulkan for native GPGPU outside the browser.


The answer to that for any given feature is "can untrusted code be trusted with that?". Wave intrinsics are probably doable. Bindless maybe, but expect a bunch of bounds checking overhead. Pointers/BDA, absolutely not.

Native libraries like wgpu can do whatever they want in extensions, safety be damned, but you're stepping outside of the WebGPU spec in that case.


What's BDA in that context, please? I can only confidently assume it's not “battle damage assessment”.


Buffer Device Address, the Vulkan name for raw pointers in shaders.


Thx


Don't know about GPGPU, but can give you a probably correct answer: Compared to "native" APIs you trade features for compatibility. It's always going to lag behind Vulkan/DX/Metal. Are you ok with excluding platforms? Vulkan/Metal/DX. If not, then I'd give wgpu a chance. Wgpu is also higher-level than Vulkan, which is borh a pro and a con.


Middleware, the portability, latest features of native APIs, and nice GPGPU tooling.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: