Why code that never goes wrong can still be wrong
The three levels of software, a framework by Jimmy Koppel: runtime, code, and logic, and why code that never fails can still be wrong.
Topics /
The most popular blog posts about systems & performance on Hacker News. 4,389 posts.
The three levels of software, a framework by Jimmy Koppel: runtime, code, and logic, and why code that never fails can still be wrong.
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.
A real VLC video filter, ported line by line to C# and raced against the original C inside VLC 4, then optimized on both sides, with byte-identical output throughout.
It all started with the big bang! We nearly lost 33 of 36 disks on a Proxmox / Ceph Cluster; this is the story of how we recovered them.
Cache strategies that don't trade-off correctness for speed
a static http server in aarch64 assembly
To start off, we can leverage the STL for this calculation. std::count_if() more precisely:
Measuring a commercial spatial audio processor, extracting its stereo impulse responses, and rebuilding the effect as a convolution filter on Linux.
The code is a bit "experimental" but it's available in the arena-fixes branch (make sure to enable --features=development if you run it from a Git repo).
AWS Senior Principal Engineers, Niko Matsakis and Marc Bowes, take us inside Aurora DSQL's development: scaling write operations without two-phase commit, overcoming garbage collection hurdles, and embracing Rust for both data and control planes.
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
Your code might be perfect and never fail, but unfortunately the outside world is less reliable. Sometimes, other people's programs crash or freeze. Networks go down; printers catch on fire . Your code needs to be prepared for this: every time you read from the network, attempt to acquire an inter-process lock, or…
Memory management is the heart of operating systems; it is crucial for both programming and system administration. In the next few posts I'll cover memory with an eye towards practical aspects, but wi
Ray: A Distributed Framework for Emerging AI Applications Moritz, Nishihara, Wang et. al.
I spent a couple of years evangelizing about Capsicum. I wrote many articles about it. So, it is very natural that I would also like to update you on this blog about the progress of the Capsicum project in FreeBSD, because this is what I’m doing in my free time. That said I feel that this blog wouldn’t be completed…
This post is part of a larger effort you can view over here: https://osblog.stephenmarz.com .
You're probably reading this page because you've attempted to access some part of my blog (Wandering Thoughts) or CSpace , the wiki thing it's part of. Unfortunately you're using a browser version that my anti-crawler precautions consider suspicious, most often because it's too old (most often this applies to versions…
In this article we’ll learn how to build shared libraries and install them properly on several platforms. For guidance, we’ll examine the goals and history of dynamic linking on UNIX-based operating systems.
M3 chips widen the gap between Pro and Max variants. They also change relative performance between P and E cores to make M3 CPUs more versatile.
There is oft-quoted advice that Kafka does poorly as a job queue. I’ve experienced this myself, and I wanted to formalize it a bit.
I wrote this article for an online magazine called Scene Zine . Scene Zine caters to the Demo Scene, which is an digital art community dedicated to pushing the limits of computers through a mix of music, art, and computer programming. A particular category of demoscene productions, 4K intros, focus on the final…
/ Fool me once, shame on you. Fool me twice, \ \ prepare to die. (Klingon Proverb) / -------------------------------------------- \ ^__^ \ (oo)\_______ (__)\ )\/\ ||----w | || || (Excerpt from Ansible for DevOps, chapter 12.) The fallout from this year's microSD card performance comparison has turned into quite a…
This post is based on an internal training I prepared for my employer, Locksley, and showcases some source-level techniques for improving C++ compilation times.
Scaling is a complex topic, but after working at big tech on services handling millions of requests and scaling my own startup (AlgoMaster.io) from scratch, I’ve realized that most systems evolve through a surprisingly similar set of stages as they grow.
A short case study breaking down the interesting design aspects of containers.