Topics /

Systems & Performance

The most popular blog posts about systems & performance on Hacker News. 6,942 posts.

Any year
3813

Let's Write Some x86-64

…"‘Our speech interposes itself between apprehension and truth like a dusty pane or warped mirror. The tongue of Eden was like a flawless glass; a light of total understanding streamed through it. Thus Babel was a second Fall.’ And Isaac the Blind, an early Kabbalist, said that, to quote Gershom Scholem’s translation…

3815

Galois field instructions on 2021 CPUs

CPUs like to operate on data types such as uint8_t , uint16_t , uint32_t , and uint64_t . These data types can be viewed as integers modulo 2 8 , 2 16 , 2 32 , and 2 64 respectively. Addition and multiplication can be defined on these integers modulo 2 N in a way which is familiar to most people; for example, in…

3816

Spectre Mitigations in Microsoft's C/C++ Compiler

This form of Spectre can be used to attack a broad range of software -- operating systems, device drivers, web APIs, database systems, and almost anything else that receives untrusted input and may run on the same computer as untrusted code. Because large programs can contain literally millions of conditional branches…

3817

Parsing integers quickly with AVX-512

If I give a programmer a string such as "9223372036854775808" and I ask them to convert it to an integer, they might do the following in C++: std::string s = .... uint64_t val; auto [ptr, ec] = std::from_chars(s.data(), s.data() + s.size(), val); if (ec != std::errc()) {} // I have an error ! // val … Continue reading…

3824

Dissecting Apple's Sparse Image Format (ASIF)

At WWDC 2025, Apple announced macOS 26 Tahoe. One of the new features in macOS Tahoe is a new disk image format: ASIF. Designed for use with virtual machines (its documentation lives under the Virtualization framework), ASIF takes a lot of inspiration from existing virtual disk formats. Practically, that means it’s…

3825

Verifying distributed systems with Isabelle/HOL

We use distributed systems every day in the form of internet services. These systems are very useful, but also challenging to implement because networks are unpredictable. Whenever you send a message over the network, it is likely to arrive quite quickly, but it’s possible that it might be delayed for a long time, or…

3827

Unix is not an acceptable Unix

The Unix command line is full of surprises. For instance: did you know that the OS X version of the ls tool, most frequently used to get a list of the files in the current working directory, recognizes no fewer than 38 different flags?

3835

Asm.js AOT compilation and startup performance

With the recent announcement of a commercial game shipping using Emscripten and asm.js , I thought it’d be a good time to explain how asm.js is executed in Firefox and some of the load-time optimizations we’ve made since the initial landing of OdinMonkey in March. (OdinMonkey is an optimization module inside Mozilla’s…