Top posts
Every blog post that took off on Hacker News, ranked by the votes of its best submission. 6,947 posts.
Hyperscan: A Fast Multi-Pattern Regex Matcher for Modern CPUs
I’m pleased to report that Hyperscan, the regular expression matcher that ate my life from 2008 through 2018, finally has a paper (pdf) – it’s being presented this week at NSDI &#…
You can run Git on object storage if you re-make packfiles
Git packfiles were designed for mmap and local disk, so pulling one object out of a bucket means guessing at a byte range. I wrote a new format instead.
Hotswapping Haskell
Bluesky: @simonmar.bsky.social Github: simonmar Email: marlowsd@gmail.com LinkedIn: Simon Marlow
Visualising the .NET Garbage Collector
As part of an ongoing attempt to learn more about how a real-life Garbage Collector (GC) works (see part 1) and after being inspired by Julia Evans’ excellent post gzip + poetry = awesome I spent a some time writing a tool to enable a live visualisation of the .NET GC in action.
Translating an ARM iOS App to Intel macOS Using Bitcode
When Apple introduced Bitcode and made it mandatory on watchOS and tvOS, they kinda hand-waved away questions about why it existed, with nebulous claims about it being useful to tune-up binaries by utilizing the latest compiler improvements.
A Gentle Introduction to Multithreading
Approaching the world of concurrency, one step at a time.
Using TLA+ to Understand Xen Vchan
The vchan protocol is used to stream data between virtual machines on a Xen host without needing any locks. It is largely undocumented. The TLA …
FlashAttention: Fast Transformer training with long sequences
Transformers have grown deeper and wider, but training them on long sequences remains difficult. The attention layer at their heart is the compute and memory bottleneck: doubling the sequence length would quadruple the runtime and memory requirements.
Visualising the Go garbage collector
gcvis is a simple way of visualising the operation of the garbage collector within a Go process. Here is a screenshot of it in operation. The rest of this article explores how gcvis works and how to interpret its results.
From macOS to Arch Linux
First impressions
What FreeBSD can offer compared to other operating systems (2020)
I really wanted to make this article short … but I failed miserably. At least I tried to organize it well so one may get back to it after ‘some’ reading because its not a short le…
ECC and DDR5
Hamming Codes ECC RAM corrects errors that occur in memory before it gets to the CPU. The most common form of ECC is the Hamming Code [1] which when it has R redundant bits can correct single bit e…
Microsoft: No Driver Updates Allowed for Win7 and Win8
Microsoft has announced that it is ending the ability to cross-sign drivers, effective 1 July 2021. This will effectively make it impossible to release new or updated drivers for Windows 7, Windows…
Linux Kernel Ksmbd Use-After-Free Remote Code Execution Vulnerability
This vulnerability allows remote attackers to execute arbitrary code on affected installations of Linux Kernel. Authentication is not required to exploit this vulnerability, but only systems with ksmbd enabled are vulnerable.
Anatomy of a Ceph meltdown
Last week, the server farm of our LMU Student Council had a major downtime over almost five days. As part of the administrator team there, I’d like to publish this post mortem to share our experiences and lessons learned to avoid situations like this in the future.
Faster Than Dijkstra?
Does a new algorithm that improves on Dijkstra'a classic one actually deliver a practical benefit for networking?
Overhead of Python asyncio tasks
Textual is a TUI framework for Python, inspired by modern web development.
The Configuration Complexity Curse
Why managing configuration has become so complex and how data configuration languages like CUE offer a path forward.