The blog makes it clear that "standard" GPU here is in opposition to purpose-built hardware like Cerebras. The selling point is reaching the same order of magnitude in generative speed as those approaches.
I tried with some simple prompts (fibonacci, linked list manipulation) and it worked nicely.
I wrote the Vulkan ProRes backend. The bitstream decoder was implemented from scratch, for a number of reasons. First, the original code was reverse-engineered, before Apple published an SMPTE document describing the…
Not really. https://codecs.multimedia.cx/2022/12/ffhistory-fabrice-bella... >Fabrice won International Obfuscated C Code Contest three times and you need a certain mindset to create code like that—which creeps into your…
Not OP but I also often to listen to ambient while programming. A couple recommendations would be "Music for Nine Post Cards" and other works by Hiroshi Yoshimura, and "Music for 18 musicians" and others by Steve Reich.…
New physics in this context means previously unknown effects or mechanisms, or even a new theory/framework for an already understood phenomenon. Using "physics" in this way is common amongst academics.
The main reason a wafer scale chip works there is because their cores are extremely tiny, and silicon area that gets fused off in the event of a defect is much lower than on NVIDIA chips, where a whole SM can get…
The NVidia driver also has userland submission (in fact it does not support kernel-mode submission at all). I don't think it leads to a significant simplification or not of the userland code, basically a driver has to…
It actually doesn't make much difference: https://chipsandcheese.com/i/138977378/decoder-differences-a...
No problem, just be aware there's a bunch of optimizations I haven't had time to implement yet. In particular, I'd to remove the reset kernel, fuse the VLD/IDCT ones, and try different strategies and hw-dependent…
Do you have a link for that? I'm the guy working on the Vulkan ProRes decoder mentionned as "in review" in this changelog, as part of a GSoC project. I'm curious wrt how a WebGPU implementation would differ from Vulkan.…
Do you mind going in some detail as to why they suck? Not a dig, just genuinely curious.
Hardware GPU encoders refer to dedicated ASIC engines, separate from the main shader cores. So they run in parallel and there is no performance penalty for using both simultaneously, besides increased power consumption.…
Matrix instructions do of course have uses in graphics. One example of this is DLSS.
Self-plug, but I wrote an open-source NVDEC driver for the Tegra X1, working on both the Switch OS and NVidia's Linux distro (L4T): https://github.com/averne/FFmpeg. It currently integrates all the low-level bits into…
The mushrooms are imported from China or Poland as mycelium, and the harvest is done in France. Since the law distinguishes between mycelium and mushroom, the mushroom were technically produced in France.…
It's not so clear cut. The author of the original PR had serious gripes about jart's handling of the situation, especially how hard they pushed their PR, practically forcing the merge before legitimate concerns were…
This isn't true anymore. It was their first approach, but since then they have switched to their own JIT recompiler. You can read their rationale here: https://github.com/Ryujinx/Ryujinx/pull/693 For the MacOS port,…
There are OpenGL extensions which can import a provided GPU buffer as a texture, using those you can achieve zero-copy. For instance, with VAAPI->OpenGL you would use vaExportSurfaceHandle in conjunction with…
You can just use __builtin_popcount or equivalent, which maps to a single instruction on most platforms.
The nouveau project used a kernel module to intercept mmio accesses: https://nouveau.freedesktop.org/MmioTrace.html. Generally speaking hooking onto driver code is one of the preferred ways of doing dynamic reverse…
> how much work would have been involved in getting this release open sourced Close to no actual effort (the headers are autogenerated). However there was probably a lot of work behind the scenes with their legal…
That's not exactly correct. This is register maps for the 3d engine (also called class), what you describe would be closer to the shader ISA. In driver code you'll see them building command buffers that set registers in…
I've written an open-source driver for the decoding side of the nvjpg module found in the Tegra X1 (ie. earlier hardware revision than the one in the A100). I did some quick benchmarks against libjpeg-turbo, if that can…
I'm not sure there's much to be simplified, interpreted JS is just that slow. In more recent firmwares Nintendo introduced more security-oriented changes (CFI, PAC) that potentially slowed the browser down even further.…
The blog makes it clear that "standard" GPU here is in opposition to purpose-built hardware like Cerebras. The selling point is reaching the same order of magnitude in generative speed as those approaches.
I tried with some simple prompts (fibonacci, linked list manipulation) and it worked nicely.
I wrote the Vulkan ProRes backend. The bitstream decoder was implemented from scratch, for a number of reasons. First, the original code was reverse-engineered, before Apple published an SMPTE document describing the…
Not really. https://codecs.multimedia.cx/2022/12/ffhistory-fabrice-bella... >Fabrice won International Obfuscated C Code Contest three times and you need a certain mindset to create code like that—which creeps into your…
Not OP but I also often to listen to ambient while programming. A couple recommendations would be "Music for Nine Post Cards" and other works by Hiroshi Yoshimura, and "Music for 18 musicians" and others by Steve Reich.…
New physics in this context means previously unknown effects or mechanisms, or even a new theory/framework for an already understood phenomenon. Using "physics" in this way is common amongst academics.
The main reason a wafer scale chip works there is because their cores are extremely tiny, and silicon area that gets fused off in the event of a defect is much lower than on NVIDIA chips, where a whole SM can get…
The NVidia driver also has userland submission (in fact it does not support kernel-mode submission at all). I don't think it leads to a significant simplification or not of the userland code, basically a driver has to…
It actually doesn't make much difference: https://chipsandcheese.com/i/138977378/decoder-differences-a...
No problem, just be aware there's a bunch of optimizations I haven't had time to implement yet. In particular, I'd to remove the reset kernel, fuse the VLD/IDCT ones, and try different strategies and hw-dependent…
Do you have a link for that? I'm the guy working on the Vulkan ProRes decoder mentionned as "in review" in this changelog, as part of a GSoC project. I'm curious wrt how a WebGPU implementation would differ from Vulkan.…
Do you mind going in some detail as to why they suck? Not a dig, just genuinely curious.
Hardware GPU encoders refer to dedicated ASIC engines, separate from the main shader cores. So they run in parallel and there is no performance penalty for using both simultaneously, besides increased power consumption.…
Matrix instructions do of course have uses in graphics. One example of this is DLSS.
Self-plug, but I wrote an open-source NVDEC driver for the Tegra X1, working on both the Switch OS and NVidia's Linux distro (L4T): https://github.com/averne/FFmpeg. It currently integrates all the low-level bits into…
The mushrooms are imported from China or Poland as mycelium, and the harvest is done in France. Since the law distinguishes between mycelium and mushroom, the mushroom were technically produced in France.…
It's not so clear cut. The author of the original PR had serious gripes about jart's handling of the situation, especially how hard they pushed their PR, practically forcing the merge before legitimate concerns were…
This isn't true anymore. It was their first approach, but since then they have switched to their own JIT recompiler. You can read their rationale here: https://github.com/Ryujinx/Ryujinx/pull/693 For the MacOS port,…
There are OpenGL extensions which can import a provided GPU buffer as a texture, using those you can achieve zero-copy. For instance, with VAAPI->OpenGL you would use vaExportSurfaceHandle in conjunction with…
You can just use __builtin_popcount or equivalent, which maps to a single instruction on most platforms.
The nouveau project used a kernel module to intercept mmio accesses: https://nouveau.freedesktop.org/MmioTrace.html. Generally speaking hooking onto driver code is one of the preferred ways of doing dynamic reverse…
> how much work would have been involved in getting this release open sourced Close to no actual effort (the headers are autogenerated). However there was probably a lot of work behind the scenes with their legal…
That's not exactly correct. This is register maps for the 3d engine (also called class), what you describe would be closer to the shader ISA. In driver code you'll see them building command buffers that set registers in…
I've written an open-source driver for the decoding side of the nvjpg module found in the Tegra X1 (ie. earlier hardware revision than the one in the A100). I did some quick benchmarks against libjpeg-turbo, if that can…
I'm not sure there's much to be simplified, interpreted JS is just that slow. In more recent firmwares Nintendo introduced more security-oriented changes (CFI, PAC) that potentially slowed the browser down even further.…