4 ms·
Ah nice, I see. Any particular reason for Rust being used? Just curious, because I would (naively) expect to see similar projects with Golang, C++ etc but I rea
by tenaciousDaniel 5y ago
Ah nice, I see. Any particular reason for Rust being used? Just curious, because I would (naively) expect to see similar projects with Golang, C++ etc but I really only see Rust.
- jms55 5y agoThis implementation is developed by firefox (at least, last I checked). Google has an implementation along similar lines in C++ called dawn, and I'm pretty sure webkit plans to use dawn. So you see them in Rust/C++, but no one has written an implementation in go afaik.
- kvark 5y agoFor all we know, Safari on Windows(!) is going to use Dawn. But anything on Apple platforms isn't quite clear. They may get their own implementation.
- frutiger 5y agoThe Windows version of Safari was discontinued in 2012.
- kangz 5y agoI think you meant WebKit on Windows (used for other browsers than Safari). Once Dawn is integrated in WebKit for one OS, it should be easy to extend WebKit to use it on other OSes so maybe it will be a quick way to have WebGPU implemented in Safari?
- kvark 5y agoThanks for correcting! For a moment I started wondering if I exposed any confidential info here, phew!
- dralley 5y agoA Go implementation would only be usable from Go, whereas Rust and C++ can export a C API that many different languages can use. Plus, using system libraries (DirectX, Villain, Metal, OpenGL) from Go would be a pain and possibly suffer worse from the FFI penalties than just using a higher level library written in Rust/C++ to begin with.
- kvark 5y agoRust is great for this! Google has an implementation of WebGPU called Dawn, which is quite impressive. It's written in C++.
- deleted 5y ago[deleted]