5 ms·
It's so frustrating that WebGPU support was released 1.5 years ago on Chrome, and yet is still unavailable on all other browsers. This is a real killer feature
by noahbp 2y ago
It's so frustrating that WebGPU support was released 1.5 years ago on Chrome, and yet is still unavailable on all other browsers.
This is a real killer feature that will dramatically slow adoption of non-Chromium browsers, even with Google defanging ad blockers.
- jasmcole 2y agoAgreed! Though support should be coming soon it seems. As a complete WebGPU novice I was really impressed with how quick it was to get going.
- gnarbarian 2y agoit's still not well supported on Linux unfortunately either
- pjmlp 2y agoEven Chrome only supports it officially on Windows, macOS and Android, no GNU/Linux (as stable). And when it becomes widespread, just like WebGL 2.0, it will be a decade behind of what native APIs are capable of. And in both cases, good luck debugging, other than replicating the content on native APIs, as means to use proper GPU debuggers, because even Chrome has yet to offer any developer tooling for GPU debugging.
- petermcneeley 2y agoRuns great on my ChromeBook.
- pjmlp 2y agoForgot about that, which isn't GNU/Linux anyway.
- murderfs 2y agoBy what metric? It's a gentoo deriviative with glibc, coreutils, etc.
- SoKamil 2y agoChromeOS is not a Linux distribution, change my mind.
- yjftsjthsd-h 2y agoChromeOS is a Linux kernel with some software bundled on top to make a usable system; it is by definition a Linux distro. Curiously, it's even a GNU/Linux distro, as it uses glibc and GNU coreutils, unlike ex Android which is a non-GNU distro. I will grant that it's a slightly odd distro, but is it any weirder than NixOS or Fedora Silverblue?
- pjmlp 2y agoOnly runs browser instances. Even Crostini is sandoxed in a way similar to WSL2.
- yjftsjthsd-h 2y agoUser-facing apps are browser instances and VMs, and under that is a pretty normal userland. It's still a distribution of software on a Linux kernel. And for that matter, is Silverblue any less a Linux distro with its read-only root and apps in flatpak/distrobox? Are Qubes OS or Proxmox with everything in VMs?
- pjmlp 2y agoPeople buying a Chromebook down at the mall will never see GNU userland. Folks using Silverblue and Flatpak distributions get to use GNU userland.
- koolala 2y agoNo luck on Steam Deck :(
- deleted 2y ago[deleted]
- moffkalast 2y agoFor Safari that's par for the course, but Firefox is in surprisingly far behind in terms of anything GPU related in the browser. I've recently been shocked trying out the WebGL aquarium demo [0] on Chrome and Firefox after running into some really odd performance issues on a project. You'd expect them to behave about the same with GPU acceleration, but FF barely gets half the framerate at the same load. Like, what?! On Linux FF is also several times slower at canvas rendering. [0] https://webglsamples.org/aquarium/aquarium.html https://webglsamples.org/aquarium/aquarium.html
- epuixrk 2y agoI‘m not an expert but I think it works on IOS with Safari. You have to enable WebGPU in the extra flag category in the settings app. But I still need to figure out what exactly this is.
- givinguflac 2y agoCan confirm, I have it enabled on iOS 18.1 and this seems to work fine.
- deleted 2y ago[deleted]
- soheil 2y agoWhy do you need webgpu? It's unfortunate that people use technology that is "state-of-the-art techniques to run simulations at interactive speeds" without fully understanding what it's for. General compute on GPU is what webgpu is for.. To simulate basic waves like in this demo you absolutely do not need that, in fact it's an indication the author implemented the solution in a non-optimal way. WebGL is fully supported by all browsers fully supported by well-maintained libs like 3js, yet here we are people writing a sin function with basic interference patterns, one of the most elementary 3D primitives, in webgpu and argue that's using the "state-of-the-art" techniques.
- jasmcole 2y agoGood question! This is actually a numerical solver for a few coupled partial differential equations - the method in this context (electromagnetism) is called FDTD. It's implemented as a WebGPU compute shader. You absolutely could do this using WebGL2 compute shaders too, but I thought it would be fun to try this newer API.
- zorgmonkey 2y agoAnnoyingly WebGL2 doesn't have compute shaders even though GLES3.x that it is based on does.
- deleted 2y ago[deleted]
- pjmlp 2y agoThank Google for that, as they dropped Intel contribution to WebGL Compute, with the reasoning WebGPU would be good enough.
- soheil 2y agoI don't understand what other type of solution is there to render on a gpu other than a numeric one? Here is a very basic shader for what you want: float freq1 = 2.0; float freq2 = 3.0; float amp = 0.5; pos.z += sin(pos.x * freq1 + uTime) * amp; pos.z += cos(pos.y * freq2 + uTime) * amp; gl_Position = projectionMatrix * modelViewMatrix * vec4(pos, 1.0);
- modeless 2y agoWebGL 2 took almost 5 years to come to Safari after Chrome. It will not take as long for WebGPU; development is active now. It is also a bit frustrating that Chrome has not enabled WebGPU on all platforms by default yet.
- jsheard 2y agoEspecially frustrating in the case of Safari, which only needs to support one native API backend (Metal) on a pretty narrow set of hardware and drivers. Firefox has a much bigger task with needing to support everything, like Chrome, but with far less resources than Google or Apple can afford to throw at it.
- aabhay 2y agoIts in technology preview, so likely to go GA at the next major OS cycle (1yish)