New
The latest blog posts to take off on Hacker News. 458 posts.
A Not-Called Function Can Cause a 5X Slowdown
Subtitle: Making Windows Slower Part 3: Process Destruction In the summer of 2017 I wrestled with a Windows performance problem. Process destruction was slow, serialized, and was blocking the syste…
Teensy 3.1 bare metal: Writing a USB driver (2014)
Electronics, Embedded Systems, and Software are my breakfast, lunch, and dinner.
Optimizing Siri on HomePod in Far‑Field Settings
The typical audio environment for HomePod has many challenges — echo, reverberation, and noise. Unlike Siri on iPhone, which operates close…
Emulate Mac OS 9 with QEMU
(Updated Dec 11, 2018)
Portability of tar features
The tar format is one of the oldest archive formats in use. It comes as no surprise that it is ugly — built as layers of hacks on the older format versions to overcome their limitations. However, given the POSIX standarization in late 80s and the popularity of GNU tar, you would expect the interoperability problems to…
FoundationDB Document Layer
Today we’re open sourcing the FoundationDB Document Layer, a document-oriented database that extends the core functionality of the FoundationDB key-value store.
How we spent two weeks hunting an NFS bug in the Linux kernel
Here's an in-depth recap of debugging a GitLab issue that culminated in a patch for the Linux kernel.
Progress in performance and scalability with CockroachDB
CockroachDB 2.1 is 50x more scalable than Amazon Aurora at less than 2% of the price per tpmC. Read on to see performance benchmarks of CockroachDB 2.1, including the latest TPC-C results.
Amazon DynamoDB On Demand
January 31, 2025: Post updated to clarify the reduced on-demand pricing and workloads recommendations. Just a few years ago, creating a database that could support your business at any scale while providing consistent low latency was a daunting task. That changed for me in 2012 while reading Werner Vogels’ blog post…
Firecracker – Lightweight Virtualization for Serverless Computing
One of my favorite Amazon Leadership Principles is Customer Obsession. When we launched AWS Lambda, we focused on giving developers a secure serverless experience so that they could avoid managing infrastructure. In order to attain the desired level of isolation we used dedicated EC2 instances for each customer. This…
Successful second round of fusion experiments with Wendelstein 7-X
The experiments conducted from July until November at the Wendelstein 7-X fusion device at the Max Planck Institute for Plasma Physics (IPP) in Greifswald have achieved higher values for the density and the energy content of the plasma and long discharge times of up to 100 seconds – record results for devices of the…
Every 7.8μs your computer’s memory has a hiccup
I was particularly interested in one of the consequences of how dynamic RAM works. You see, each bit of data is stored by the charge (or lack of it) on a tiny capacitor within the RAM chip. But these capacitors gradually lose their charge over time.
Speeding up the charting of sensor information as a waveform graph
A common problem that we have seen come up in several projects, is how to plot large datasets over time in an efficient manner using Qt. Here is one approach that we have found to work well in some situations, maybe it helps you out in your project.
Concurrency Glossary
🦑 Informal definitions of terms used in concurrency modeling
For a brief period, the Windows kernel tried to deal with gamma rays
Practical development throughout the evolution of Windows.
FoundationDB 6.0 released, featuring multi-region support
FoundationDB 6.0.15, our first major release since open sourcing FoundationDB in April, is now officially available!
Fibers are the right solution to improve Ruby performance
The majority of performance improvements in modern processors are due to increased core count rather than increased instruction execution frequency. To maximise hardware utilization, applications need to use multiple processes and threads. Servers that process discrete requests are a good candidate for both…
OpenZFS vs. Btrfs and other file systems (2017)
Michael Dexter returns to update his blog post on the different file systems and details some key developments that are unfolding. He covers what's being added to these respective file systems: OpenZFS, Btrfs, and bcachefs. Michael Dexter has invested his volunteer time and career in Open Source hypervisors and file…
Mtime comparison considered harmful
tl;dr: Rebuilding a target because its mtime is older than the mtimes of its dependencies, like `make` does, is very error prone. redo does...
C Portability Lessons from Weird Machines
In this article we’ll go on a journey from 4-bit microcontrollers to room-sized mainframes and learn how porting C to each of them helped people separate the essence of the language from the environment of its birth. I’ve found technical manuals and videos for this article to help bring each computer to life.
PSA: Firefox Nightly now with experimental Wayland support
As of last nightly (20181115100051), Firefox now supports Wayland on Linux, thanks to the work from Martin Stransky and Jan Horak, mostly.
Red Hat Enterprise Linux 8 Beta
Linux containers, Kubernetes, artificial intelligence, blockchain and too many other technical breakthroughs to list all share a common component - Linux, the same workhorse that has driven mission-critical, production systems for nearly two decades. Today, we’re offering a vision of a Linux foundation to power the…
UKL: A Unikernel Based on Linux
Unikernels are customized, single address space bootable images composed of an application and the required bare-minimum kernel functionality. Today’s unikernels have demonstrated substantial performance and security advantages over monolithic and microkernels, but none have yet achieved widespread adoption. The…
Real-Time Noise Suppression Using Deep Learning
Imagine waiting for your flight at the airport. Suddenly, an important business call with a high profile customer lights up your phone. Tons of background noise clutters up the soundscape around you…
Memory-Level Parallelism: Intel Skylake versus Apple A12/A12X
Modern processors execute instructions in parallel in many different ways: multi-core parallelism is just one of them. In particular, processor cores can have several outstanding memory access requests "in flight". This is often described as "memory-level parallelism". You can measure the level of memory-level…
Capsicum
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…
Linkers and Loaders (1999)
The text in these files is the unedited original manuscript. M-K has fine copy editors, who have fixed all the minor typos, spelling, and grammar errors in the printed book, but if you come across factual errors I'd still appreciate help getting all the details of linking and loading as complete and correct as…
Cloud Computing Without Containers
We have a cloud computing platform called Workers. Unlike essentially every other cloud computing platform I know of, it doesn’t use containers or virtual machines. We believe that is the future of Serverless and cloud computing in general, and I’ll try to convince you why.