Topics /
Systems & Performance
The most popular blog posts about systems & performance on Hacker News. 6,942 posts.
A kernel stack use-after-free: Exploiting Nvidia's GPU Linux drivers
This article details two bugs discovered in the NVIDIA Linux Open GPU Kernel Modules and demonstrates how they can be exploited. The bugs can be triggered by an attacker controlling a local unprivileged process. Their security implications were confirmed via a proof of concept that achieves kernel read and write…
Quick Look at Rosetta on Linux
Yesterday, Apple did release RosettaLinux as part of the macOS Ventura preview. Let’s take a first quick look…
Where Linux's load average comes from in the kernel
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…
Jepsen: Scylla 4.2-rc3
Scylla is a distributed wide-column 1 database which originated as a C++ port of Cassandra, aiming for improved performance. It supports both Cassandra- and DynamoDB -compatible APIs, and is intended for high-throughput, low-latency workloads, including analytics, messaging, and other time-series data.
Faster Index I/O with NVMe SSDs
The Marginalia Search index has been partially rewritten to perform much better, using new data structures designed to make better use of modern hardware. This post will cover the new design, and will also touch upon some of the unexpected and unintuitive performance characteristics of NVMe SSDs when it comes to read…
How TimescaleDB compresses time-series data
TimescaleDB compression with hypercore - columnar storage with up to 98% ratio in PostgreSQL. segmentby/orderby configuration and a benchmark for IoT and time-series.
Hardware hotplug events on Linux, the gory details
Maybe the code shouldn't be the only documentation?
We improved Tensorflow Serving performance by over 70%
In this blog, we’ll focus on techniques that improve latency by optimizing both the prediction server and client.
More optimizations in the compiler and JIT
The official home of the Erlang Programming Language
The macOS Sandbox File Limit
There has recently been some renewed discussion on Twitter about the limitation that the macOS sandbox places on the number of open files an app can access at once. Apps are still running into problems because of this limitation, and there is not a lot of technical detail available on it outside of Apple, so I’d like…
A Performance Cheat Sheet for PostgreSQL
Performance tuning is not trivial, but you can go a long way with a few basic guidelines. In this blog, we will discuss how you analyze the workload of the database, and then review a list of important configuration parameters to improve the performance of PostgreSQL.
A New Back End for Cranelift
This post will describe my recent work on Cranelift as part of my day job at Mozilla. In this post, I will set some context and describe the instruction selection problem. In particular, I’ll talk about a revamp to the instruction selector and backend framework in general that we’ve been working on.
Inside Cloud Spanner and the CAP Theorem
Building systems that manage globally distributed data, provide data consistency and are also highly available is really hard. The beauty of the cloud is that someone else can build that for you.
The M2 is more advanced than it seemed
Apple’s M2 chip uses a newer version of the CPU core instruction set. This increases its capability, thus how well it will cope with future apps and macOS, compared with the M1.
HiveNightmare a.k.a. SeriousSAM – anybody can read the registry in Windows 10
This is the story of how all non-admin users can read the registry — and so elevate privileges and access sensitive credential information…
Lessons from the PG&E outage
At Waymo, our mission is to be the world’s most trusted driver. We know trust is built through consistent behavior over time—earned through every mile we drive and every interaction we have with the community. This past Saturday, as a widespread PG&E outage cut power to nearly one-third of San Francisco, our service…
Building a home NAS on a shoestring budget with the Rock64 SBC (2018)
I’ve gone through many iterations of a Home NAS over the years. It started with an AMD Phenom based system running in a Norco case with about 8 hard SATA hard drives (4 primary, 4 backup via Rsync). The noise and power consumption of that system was overkill for what it was used for, so I sold it and went to a…
What the hell is a target triple?
Cross-compiling is taking a computer program and compiling it for a machine that isn’t the one hosting the compilation. Although historically compilers would only compile for the host machine, this is considered an anachronism: all serious native compilers are now cross-compilers.
A macOS bug that causes TCP networking to stop working after 49.7 days
At Photon, we are developing the world’s most complete iMessage API (with RCS and SMS fallback) for agents: infrastructure that lets Agents reliably communicate through one of the most native messaging interfaces people already use. While building it, we run Mac-backed systems continuously and care a lot about making…
State of multi-player Wayland
I've been fascinated by the idea of attaching multiple mice to one computer, and then having multiple mouse cursors inside of one desktop environment!
Project Loom and Structured Concurrency
Project Loom is one of the major “projects” in which Java is moved forward, alongside the perhaps better known projects Amber and Valhalla. It will bring “virtual” threads with low resource footprint and low cost of blocking to the Java plaform. Here is my annual advent season update, this time with a focus on…
Playground Wisdom: Threads Beat Async/Await
Musings about async await again and why I think virtual threads
The Limits of NTP Accuracy on Linux
Lately I’ve been trying to find (and understand) the limits of time syncing between Linux systems. How accurate can you get? What does it take to get that? And what things can easily add measurable amounts of time error? After most of a month (!), I’m starting to understand things. This is kind of a follow-on to a…
Philosophy of Coroutines
I encountered the idea as a student, when I first read The Art of Computer Programming . I’d been programming already for most of my childhood, and I was completely blown away by the idea, which was entirely new to me. In fact, it’s probably not an exaggeration to say that in the whole of TAOCP that was the single…
Teardown of a Failed Linux LTS Spectre Fix
An in-depth analysis of the journey of a Spectre fix into the upstream LTS kernels that left its users with nothing more than a false sense of security.
Using SIMD to aggregate billions of values per second
How SIMD instructions make aggregations faster in QuestDB, including benchmark results and a comparison with Postgres.