6 ms·
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 thes
by masspro 2y ago
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.
- jsheard 2y agoThe 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.
- littlestymaar 2y agoWhat's BDA in that context, please? I can only confidently assume it's not “battle damage assessment”.
- jsheard 2y agoBuffer Device Address, the Vulkan name for raw pointers in shaders.
- littlestymaar 2y agoThx
- tormeh 2y agoDon'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.
- pjmlp 2y agoMiddleware, the portability, latest features of native APIs, and nice GPGPU tooling.