Linux Performance Analysis (2015)
You log in to a Linux server with a performance issue: what do you check in the first minute?
Topics /
The most popular blog posts about systems & performance on Hacker News. 6,942 posts.
You log in to a Linux server with a performance issue: what do you check in the first minute?
This is the introduction of a multipart series. It is to give a high level overview without really deeply diving into any individual component.
Introduction This is the first part of a series of blog posts I intend to write, whose aim will be to explain how garbage collection works in the real world (in particular, with the JVM). I will co…
This started out as a Hacker News comment about a blog post about select being fundamentally broken After that the same author wrote why epoll is broken as well. I don’t know what problem author is trying to solve but let’s pick this one:
Someone asked if I could write about the rise of AI and Large Language Models (LLMs) and what I think that means for the future of people, t...
Continuous aggregates are one of Timescale's most popular features, but you can’t fully understand them without some context on Postgres views and materialized.
A recap of Sai Srirampur's POSETTE 2026 talk on storage performance in Postgres, with a local NVMe vs. EBS benchmark and the production setup behind it.
I recently worked on two different C projects, and I wanted to structure them in a way that would make them easy to maintain and understand. I also wanted to make sure that the projects were easy to build and test. In this post, I will share my experience and the best practices I found for structuring C projects.
A few hours ago, I sent the following “dear colleagues” email (lightly edited to remove some private details) to all my users at work: This has been a very trying week. For those of you…
The v0.9 release of the Windows Terminal has arrived! This is the last version of the Terminal that will include new features before the v1 release. You
This is a big issue and it has been there for a long time. Just a month ago I finally got verification that the Microsoft Product Groups n...
People keep saying that a one line source code change should take one second to be “effective”. “Effective” meaning that you get some form…
TL;DR: x86_64 decoding is hard, and the number and variety of implementations available for it makes it uniquely suited to differential fuzzing. We’re open sourcing mishegos, a differential fuzzer for instruction decoders. You can use it to discover discrepancies in your own decoders and analysis tools! In the…
We announced the t2.nano instances earlier this year. Like their larger siblings (t2.micro, t2.small, t2.medium, and t2.large), these instances provide a baseline level of processing power, along with the ability to save up unused cycles and use them when the need arises. As I noted in my earlier post (New T2.Large…
Recently I’ve been working on a pretty big rust project and to my surprise Icouldn’t get tests to work properly.
The Linux Scheduler: a Decade of Wasted Cores – Lozi et al. 2016 This is the first in a series of papers from EuroSys 2016. There are three strands here: first of all, there’s some grea…
David Ungar is "an out-of-the-box thinker who enjoys the challenge of building computer software systems that work like magic and fit a user...
As interesting chat on Twitter today reminded me that not everyone is probably aware that we’re seeing a concerted attempt to dislodge the general purpose operating system from our servers.
Making compilation pipelines fast, starting with the tokenizer
Posted by Mateusz Jurczyk of Google Project ZeroPatch diffing is a common technique of comparing ...
CockroachDB uses RocksDB for its storage engine because of RocksDB's rich feature set, which is necessary for a complex product like a distributed SQL database.
Tendermint is a server and a protocol for building linearizable (or sequentially consistent) byzantine fault-tolerant applications. Tendermint validators accept transactions from clients over HTTP, and replicate them to the other validators in the cluster, forming a totally ordered sequence of transactions. Each…
My day job is in browsers and cryptography , not compilers, yet I often find that I need to spend more of my time working through the semantics of programming languages than using them. This post discusses a thorny cross-language issue between C, C++, and Rust. In short:
Here are some notes that may help newcomers understand what is actually happening with QEMU devices:
The "stack clash" series of vulnerabilities were a prime opportunity to demonstrate the strength of grsecurity's approach to security. Unlike upstream Linux and other OSes, the issues uncovered were unexploitable under grsecurity for many years.