<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/"><channel><title>Performance on mc · notes</title><link>https://hk.crepuscule.uk/tags/performance/</link><description>Recent content in Performance on mc · notes</description><generator>Hugo</generator><language>en-us</language><lastBuildDate>Tue, 19 May 2026 17:40:00 +0800</lastBuildDate><atom:link href="https://hk.crepuscule.uk/tags/performance/index.xml" rel="self" type="application/rss+xml"/><item><title>Data-parallel training: gradient bucketing and overlap</title><link>https://hk.crepuscule.uk/posts/grad-bucketing/</link><pubDate>Tue, 19 May 2026 17:40:00 +0800</pubDate><guid>https://hk.crepuscule.uk/posts/grad-bucketing/</guid><description>Why DDP feels like magic until you look at the allreduce schedule.</description></item><item><title>Tuning TCP BBR and fq on a high-latency link</title><link>https://hk.crepuscule.uk/posts/bbr/</link><pubDate>Mon, 03 Nov 2025 22:15:00 +0800</pubDate><guid>https://hk.crepuscule.uk/posts/bbr/</guid><description>Switching off loss-based congestion control on a long-fat path, and the fq gotcha for UDP.</description></item><item><title>A first, honest look at io_uring</title><link>https://hk.crepuscule.uk/posts/io-uring/</link><pubDate>Thu, 22 May 2025 20:40:00 +0800</pubDate><guid>https://hk.crepuscule.uk/posts/io-uring/</guid><description>Two ring buffers, one syscall, and the mental model that finally made it click.</description></item></channel></rss>