Topics /
Systems & Performance
The most popular blog posts about systems & performance on Hacker News. 6,943 posts.
ServiceFabric: a distributed platform for building microservices in the cloud
ServiceFabric: a distributed platform for building microservices in the cloud Kakivaya et al., EuroSys’18 (If you don’t have ACM Digital Library access, the paper can be accessed either by fo…
What was the role of MS-DOS in Windows 95? (2007)
Practical development throughout the evolution of Windows.
The current state of TLA⁺ development
The 2025 TLA⁺ Community Event was held last week on May 4th at McMaster University in Hamilton, Ontario, Canada. It was a satellite event to ETAPS 2025, which I also attended, and plan to write about in the near future. I gave a talk somewhat-hucksterishly titled It’s never been easier to write TLA⁺ tooling! which I…
Asm.js Speedups Everywhere
asm.js is an easy-to-optimize subset of JavaScript. It runs in all browsers without plugins, and is a good target for porting C/C++ codebases such as game engines - which have ...
How to achieve low latency with 10Gbps Ethernet
In a recent blog post we explained how to tweak a simple UDP application to maximize throughput. This time we are going to optimize our UDP application for latency. Fighting with latency is a great excuse to discuss modern features of multiqueue NICs.
Request Coalescing in Async Rust
As the popular saying goes, there are only two hard problems in computer science: caching, off-by-one errors, and getting a Rust job that isn’t cryptocurrency-related. Today, we’ll discuss caching!...
A Quick Introduction to LXD
With the recent release of Ubuntu 15.04, aka “Vivid Vervet”, the Ubuntu community has also unveiled an early release of LXD (pronounced “lex-dee”), a new project aimed at revitalizing the use of LXC and LXC-based containers in the face of application container efforts such as Docker and rkt. In this post, I’ll provide…
ELF files on Linux
An step-by-step introduction into ELF files. Learn the structure and format, to understand how binaries and libraries on Linux systems work.
Valgrind Release 3.9.0
Official Home Page for valgrind, a suite of tools for debugging and profiling. Automatically detect memory management and threading bugs, and perform detailed profiling. The current stable version is valgrind-3.28.0.
LLVM’s garbage collection facilities and SBCL’s generational GC
Intro, overview
Faster – A key-value store for large state management
At SIGMOD 2018, a team from Microsoft Research will be presenting a new embedded key-value store called FASTER, described in their paper “FASTER: A Concurrent Key-Value Store with In-Place Updates”. As its name suggests, FASTER makes a major leap forward in terms of supporting fast and frequent lookups and updates of…
Parallelism in one line
A Better Model for Day to Day Threading Tasks
Seven Commandments for Event-Driven Architectures
The critical rules to keep in mind when designing an event-driven architecture
Running Rust on Logic Gates
A journey in building an ARM CPU from scratch in a digital circuit simulator, and running Rust on it to interpret Scheme and serve Web pages.
Memory Allocators 101
For the last few weeks, I've been working on a couple of patches to tcmalloc, Google's super high performance memory allocator. I'm going to post about them soon, but first I thought it would be cool to give some background about what a memory allocator actually does. So, if you've ever wondered what happens when you…
Revisiting the NetBSD Build System
I recently picked up an embedded project in which I needed to build a highly customized full system image with minimal boot times and NetBSD was the best choice for it. Let's look at why its build system helps.
Trust Issues: Exploiting TrustZone TEEs
Posted by Gal Beniamini, Project ZeroMobile devices are becoming an increasingly privacy-sensitiv...
A whirlwind tour of Go’s runtime environment variables
The Go runtime, in addition to providing the usual services of garbage collection, goroutine scheduling, timers, network polling and so forth, contains facilities to enable extra debugging output and even alter the behaviour of the runtime itself.
Hypervisor from Scratch (2022)
We write about Windows Internals, Hypervisors, Linux, and Networks.
Eclipse ThreadX
TL;DR – Get Engaged! Contact us to learn how to become part of the Eclipse ThreadX Interest Group Contribute to the project and join the ThreadX developer mailing list Stay connected by joini…
Wayland in 2021
Running Wayland on Linux in 2021
OpenBSD Desktop
I am a minimalist, and I tend to always keep it as small as I can, so I try to use all I have in base (if it fits), plus of course some other tools needed.
How memory maps (mmap) deliver faster file access in Go
Learn how memory maps (mmap) accelerate file I/O, reduce latency, and improve app performance in Unix and Go with real-world benchmarks.