Topics /

Systems & Performance

The most popular blog posts about systems & performance on Hacker News. 543 posts.

2025
392

FreeBSD Suspend/Resume

I have been using FreeBSD on the desktops/laptops since about 20 years now and I have described all that I configured in the FreeBSD Desktop series. About 1 year ago I shared a video on YouTube and…

395

Wild performance tricks

Last week I had the pleasure of attending RustForge in Wellington, New Zealand. I gave a talk titled “Wild performance tricks”. You can watch a recording of my talk . If you’d prefer to read rather than watch, the rest of this post will cover more or less the same material. The talk shows some linker benchmarks, which…

402

The best worst hack that saved our bacon

No-one really likes engineering war stories, but this one's relevant because there's a moral to it. I've talked before about defining technical debt as technical decisions that provide immediate value, but with long-term negative impact if they aren't cleaned up. Sometimes introducing technical debt

405

The Polyglot NixOS

Recently a colleague mentioned building NixOS images that run unchanged on multiple architectures. Given the past adventures on this blog with systemd-repart and cross-compiling NixOS, I decide to give this a go.

408

How to make things slower so they go faster

In a service with capacity $\mu$ requests per second and background load $\lambda_0$, the usable headroom is $H = \mu - \lambda_0 > 0$. When $M$ clients align, e.g., after a cache expiry, at a cron boundary, or as a service returns from an outage, the bucketed arrival rate can

412

From Azure Functions to FreeBSD

Putting FreeBSD’s “power to serve” motto to the test. On Thanksgiving morning, I woke up to one of my web services being unavailable. All HTTP requests failed with a “503 Service unavailable” error. I logged into the console, saw a simplistic “Runtime version: Error” message, and was not able to diagnose the problem…

413

Simpler Backoff

Exponential backoff with jitter is de rigeur for making service calls. This code, or something like it, probably looks really familiar: func do(ctx context.Context) error { const ( maxAttempts = 10 baseDelay = 1 * time.Second maxDelay = 60 * time.Second ) delay := baseDelay for attempt := range maxAttempts { err :=…

417

Building Burstables: CPU slicing with cgroups

Burstable VMs run on a fraction of CPU and burst to a higher level of CPU usage to support occasional usage spikes. To implement them, we leveraged Control Groups v2 (cgroups v2), a Linux kernel feature that helps manage resource usage. We thought our open-source implementation of burstable VMs might be interesting…