<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Hacker News: averne_</title><link>https://news.ycombinator.com/user?id=averne_</link><description>Hacker News RSS</description><docs>https://hnrss.org/</docs><generator>hnrss v2.1.1</generator><lastBuildDate>Mon, 13 Jul 2026 11:36:44 +0000</lastBuildDate><atom:link href="https://hnrss.org/user?id=averne_" rel="self" type="application/rss+xml"></atom:link><item><title><![CDATA[New comment by averne_ in "Real-time LLM Inference on Standard GPUs: 3k tokens/s per request"]]></title><description><![CDATA[
<p>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.</p>
]]></description><pubDate>Fri, 29 May 2026 16:49:53 +0000</pubDate><link>https://news.ycombinator.com/item?id=48325794</link><dc:creator>averne_</dc:creator><comments>https://news.ycombinator.com/item?id=48325794</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48325794</guid></item><item><title><![CDATA[New comment by averne_ in "Real-time LLM Inference on Standard GPUs: 3k tokens/s per request"]]></title><description><![CDATA[
<p>I tried with some simple prompts (fibonacci, linked list manipulation) and it worked nicely.</p>
]]></description><pubDate>Fri, 29 May 2026 16:47:05 +0000</pubDate><link>https://news.ycombinator.com/item?id=48325747</link><dc:creator>averne_</dc:creator><comments>https://news.ycombinator.com/item?id=48325747</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48325747</guid></item><item><title><![CDATA[New comment by averne_ in "Video Encoding and Decoding with Vulkan Compute Shaders in FFmpeg"]]></title><description><![CDATA[
<p>I wrote the Vulkan ProRes backend. The bitstream decoder was implemented from scratch, for a number of reasons.<p>First, the original code was reverse-engineered, before Apple published an SMPTE document describing the bitstream syntax. Second, I tried my best at optimizing the code for GPU hardware. And finally, I wanted take the learning opportunity :)<p>And to answer the parent's question, the shaders are written in pure GLSL. For instance, this is the ProRes bitstream decoder in question: <a href="https://code.ffmpeg.org/FFmpeg/FFmpeg/src/branch/master/libavcodec/vulkan/prores_vld.comp.glsl" rel="nofollow">https://code.ffmpeg.org/FFmpeg/FFmpeg/src/branch/master/liba...</a></p>
]]></description><pubDate>Fri, 20 Mar 2026 18:14:33 +0000</pubDate><link>https://news.ycombinator.com/item?id=47458468</link><dc:creator>averne_</dc:creator><comments>https://news.ycombinator.com/item?id=47458468</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47458468</guid></item><item><title><![CDATA[New comment by averne_ in "Fabrice Bellard: Biography (2009) [pdf]"]]></title><description><![CDATA[
<p>Not really. <a href="https://codecs.multimedia.cx/2022/12/ffhistory-fabrice-bellard/" rel="nofollow">https://codecs.multimedia.cx/2022/12/ffhistory-fabrice-bella...</a><p>>Fabrice won International Obfuscated C Code Contest three times and you need a certain mindset to create code like that—which creeps into your other work. So despite his implementation of FFmpeg was fast-working, it was not very nice to debug or refactor, especially if you’re not Fabrice</p>
]]></description><pubDate>Wed, 24 Dec 2025 23:07:16 +0000</pubDate><link>https://news.ycombinator.com/item?id=46380271</link><dc:creator>averne_</dc:creator><comments>https://news.ycombinator.com/item?id=46380271</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=46380271</guid></item><item><title><![CDATA[New comment by averne_ in "How Brian Eno Created Ambient 1: Music for Airports (2019)"]]></title><description><![CDATA[
<p>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.<p>In fact, the use of loops described in this article reminded me of what Reich called "phases", basically the same concept of emerging/shifting melodic patterns between different samples.</p>
]]></description><pubDate>Tue, 02 Dec 2025 09:15:01 +0000</pubDate><link>https://news.ycombinator.com/item?id=46119238</link><dc:creator>averne_</dc:creator><comments>https://news.ycombinator.com/item?id=46119238</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=46119238</guid></item><item><title><![CDATA[New comment by averne_ in "Nobel Prize in Physics 2025"]]></title><description><![CDATA[
<p>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.</p>
]]></description><pubDate>Tue, 07 Oct 2025 12:01:35 +0000</pubDate><link>https://news.ycombinator.com/item?id=45502078</link><dc:creator>averne_</dc:creator><comments>https://news.ycombinator.com/item?id=45502078</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=45502078</guid></item><item><title><![CDATA[New comment by averne_ in "Cerebras systems raises $1.1B Series G"]]></title><description><![CDATA[
<p>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 disabled. AFAIU this approach is not easily applicable to complex core designs.</p>
]]></description><pubDate>Tue, 30 Sep 2025 19:53:17 +0000</pubDate><link>https://news.ycombinator.com/item?id=45430414</link><dc:creator>averne_</dc:creator><comments>https://news.ycombinator.com/item?id=45430414</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=45430414</guid></item><item><title><![CDATA[New comment by averne_ in "AMD’s RDNA4 GPU architecture"]]></title><description><![CDATA[
<p>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 keep track of the same thing it would've submitted to an ioctl. If anything there are some subtleties that require careful consideration.<p>The major upside is removing the context switch on a submission. The idea is that an application only talks to the kernel for queue setup/teardown, everything else happens in userland.</p>
]]></description><pubDate>Sun, 14 Sep 2025 10:16:39 +0000</pubDate><link>https://news.ycombinator.com/item?id=45238783</link><dc:creator>averne_</dc:creator><comments>https://news.ycombinator.com/item?id=45238783</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=45238783</guid></item><item><title><![CDATA[New comment by averne_ in "Ask HN: Why hasn't x86 caught up with Apple M series?"]]></title><description><![CDATA[
<p>It actually doesn't make much difference: <a href="https://chipsandcheese.com/i/138977378/decoder-differences-a-drop-in-the-bucket" rel="nofollow">https://chipsandcheese.com/i/138977378/decoder-differences-a...</a></p>
]]></description><pubDate>Tue, 26 Aug 2025 12:30:43 +0000</pubDate><link>https://news.ycombinator.com/item?id=45025628</link><dc:creator>averne_</dc:creator><comments>https://news.ycombinator.com/item?id=45025628</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=45025628</guid></item><item><title><![CDATA[New comment by averne_ in "FFmpeg 8.0"]]></title><description><![CDATA[
<p>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 specializations for the IDCT routine (AAN algorithm, packed FP16, cooperative matrices).</p>
]]></description><pubDate>Fri, 22 Aug 2025 19:46:03 +0000</pubDate><link>https://news.ycombinator.com/item?id=44988984</link><dc:creator>averne_</dc:creator><comments>https://news.ycombinator.com/item?id=44988984</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=44988984</guid></item><item><title><![CDATA[New comment by averne_ in "FFmpeg 8.0"]]></title><description><![CDATA[
<p>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.<p>I'm curious wrt how a WebGPU implementation would differ from Vulkan. Here's mine if you're interested: <a href="https://github.com/averne/FFmpeg/tree/vk-proresdec" rel="nofollow">https://github.com/averne/FFmpeg/tree/vk-proresdec</a></p>
]]></description><pubDate>Fri, 22 Aug 2025 19:29:33 +0000</pubDate><link>https://news.ycombinator.com/item?id=44988819</link><dc:creator>averne_</dc:creator><comments>https://news.ycombinator.com/item?id=44988819</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=44988819</guid></item><item><title><![CDATA[New comment by averne_ in "I designed my own fast game streaming video codec – PyroWave"]]></title><description><![CDATA[
<p>Do you mind going in some detail as to why they suck? Not a dig, just genuinely curious.</p>
]]></description><pubDate>Tue, 29 Jul 2025 14:22:24 +0000</pubDate><link>https://news.ycombinator.com/item?id=44723746</link><dc:creator>averne_</dc:creator><comments>https://news.ycombinator.com/item?id=44723746</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=44723746</guid></item><item><title><![CDATA[New comment by averne_ in "I designed my own fast game streaming video codec – PyroWave"]]></title><description><![CDATA[
<p>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.<p>Generally, you're right that these hardware blocks favor latency. One example of this is motion estimation (one of the most expensive operations during encoding). The NVENC engine on NVidia GPUs will only use fairly basic detection loops, but can optionally be fed motion hints from an external source. I know that NVidia has a CUDA-based motion estimator (called CEA) for this purpose. On recent GPUs there is also the optical flow engine (another separate block) which might be able to do higher quality detection.</p>
]]></description><pubDate>Mon, 28 Jul 2025 22:04:12 +0000</pubDate><link>https://news.ycombinator.com/item?id=44716273</link><dc:creator>averne_</dc:creator><comments>https://news.ycombinator.com/item?id=44716273</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=44716273</guid></item><item><title><![CDATA[New comment by averne_ in "Basic Facts about GPUs"]]></title><description><![CDATA[
<p>Matrix instructions do of course have uses in graphics.
One example of this is DLSS.</p>
]]></description><pubDate>Wed, 25 Jun 2025 09:27:27 +0000</pubDate><link>https://news.ycombinator.com/item?id=44375258</link><dc:creator>averne_</dc:creator><comments>https://news.ycombinator.com/item?id=44375258</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=44375258</guid></item><item><title><![CDATA[New comment by averne_ in "Examining the Nintendo Switch (Tegra X1) Video Engine"]]></title><description><![CDATA[
<p>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): <a href="https://github.com/averne/FFmpeg">https://github.com/averne/FFmpeg</a>.<p>It currently integrates all the low-level bits into FFmpeg directly, though I am looking at moving those to a separate library. Eventually, I hope to support desktop cards as well with minimal code changes.</p>
]]></description><pubDate>Wed, 03 Jul 2024 09:03:13 +0000</pubDate><link>https://news.ycombinator.com/item?id=40864114</link><dc:creator>averne_</dc:creator><comments>https://news.ycombinator.com/item?id=40864114</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=40864114</guid></item><item><title><![CDATA[New comment by averne_ in "Paris's Catacomb Mushrooms (2017)"]]></title><description><![CDATA[
<p>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.<p><a href="https://web.archive.org/web/20240121180131/https://www.reddit.com/r/france/comments/190ts23/vous_mangez_des_champignons_fran%C3%A7ais_provenant_de/" rel="nofollow">https://web.archive.org/web/20240121180131/https://www.reddi...</a></p>
]]></description><pubDate>Wed, 29 May 2024 07:13:33 +0000</pubDate><link>https://news.ycombinator.com/item?id=40509322</link><dc:creator>averne_</dc:creator><comments>https://news.ycombinator.com/item?id=40509322</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=40509322</guid></item><item><title><![CDATA[New comment by averne_ in "Llamafile lets you distribute and run LLMs with a single file"]]></title><description><![CDATA[
<p>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 lifted.<p>See this post <a href="https://news.ycombinator.com/item?id=35418066">https://news.ycombinator.com/item?id=35418066</a></p>
]]></description><pubDate>Thu, 30 Nov 2023 13:29:07 +0000</pubDate><link>https://news.ycombinator.com/item?id=38473226</link><dc:creator>averne_</dc:creator><comments>https://news.ycombinator.com/item?id=38473226</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=38473226</guid></item><item><title><![CDATA[New comment by averne_ in "RyujinX – Open Source Nintendo Switch Emulator"]]></title><description><![CDATA[
<p>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: <a href="https://github.com/Ryujinx/Ryujinx/pull/693">https://github.com/Ryujinx/Ryujinx/pull/693</a><p>For the MacOS port, they also added an ARM-to-ARM JIT in case hypervisor runs into issues.</p>
]]></description><pubDate>Thu, 31 Aug 2023 08:35:09 +0000</pubDate><link>https://news.ycombinator.com/item?id=37334154</link><dc:creator>averne_</dc:creator><comments>https://news.ycombinator.com/item?id=37334154</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=37334154</guid></item><item><title><![CDATA[New comment by averne_ in "Vulkan Video Decoding"]]></title><description><![CDATA[
<p>There are OpenGL extensions which can import a provided GPU buffer as a texture, using those you can achieve zero-copy.<p>For instance, with VAAPI->OpenGL you would use vaExportSurfaceHandle in conjunction with glEGLImageTargetTexture2DOES.<p>Check out the "hwdec" mechanism in MPV:<p><a href="https://github.com/mpv-player/mpv/blob/master/video/out/hwdec/hwdec_vaapi.c#L264">https://github.com/mpv-player/mpv/blob/master/video/out/hwde...</a><p><a href="https://github.com/mpv-player/mpv/blob/master/video/out/hwdec/dmabuf_interop_gl.c#L253">https://github.com/mpv-player/mpv/blob/master/video/out/hwde...</a></p>
]]></description><pubDate>Mon, 08 May 2023 09:22:15 +0000</pubDate><link>https://news.ycombinator.com/item?id=35859666</link><dc:creator>averne_</dc:creator><comments>https://news.ycombinator.com/item?id=35859666</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=35859666</guid></item><item><title><![CDATA[New comment by averne_ in "A neat XOR trick"]]></title><description><![CDATA[
<p>You can just use __builtin_popcount or equivalent, which maps to a single instruction on most platforms.</p>
]]></description><pubDate>Tue, 13 Dec 2022 12:36:11 +0000</pubDate><link>https://news.ycombinator.com/item?id=33968064</link><dc:creator>averne_</dc:creator><comments>https://news.ycombinator.com/item?id=33968064</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=33968064</guid></item></channel></rss>