Topics /

Systems & Performance

The most popular blog posts about systems & performance on Hacker News. 343 posts.

2020
184

What would happen if computers never got any faster?

My first computer was a BBC Micro. It could do basic graphics at a resolution of 640×256 - with 8 different colours. Not a typo. Eight! The mono speaker produced bleeps and bloops. It was basic, in all senses of the word. Eventually, talented hackers found a way for it to do simplistic 3D graphics and even speech…

188

Which Machines Do Computer Architects Admire? (2013)

The Toolsmith Conference was held in Chapel Hill, NC, in October, 2001, to honor Fred Brooks. Dr. Brooks was a student of Howard Aiken at Harvard, joined IBM to work on the Stretch Project, and later served as chief architect of the IBM S/360. He founded the Computer Science Department at UNC-Chapel Hill in 1964 and…

193

Computers Can Be Understood

Computers and computer systems are build up from deterministic, comprehensible, building blocks. Their operations and behaviors can be understood and reasoned about. I relate my personal beliefs and mindset on this point, and explore some manifestations and ramifications of this philosophy.

194

Writing a Memory Allocator (2019)

Video lectureMutator, Allocator, CollectorMemory blockAllocator interfaceMemory alignmentMemory mappingFreeing the objectsBlocks reuseFirst-fit searchAssignmentsNext-fit searchBest-fit searchBlocks splittingBlocks coalescingExplicit Free-listSegregated-list searchOptimizing the storageCustom sbrkConclusion This is the…

195

Faster Integer Parsing

Back with a post after 6 years of silence. If you had to parse a microsecond-resolution epoch timestamp as quickly as possible, how would you do it? We’ll take a look at using compiler intrinsics to do it in log(n) time.

198

Fakecracker: NetBSD as a Function Based MicroVM

In November 2018 AWS published an Open Source tool called Firecracker , mostly a virtual machine monitor relying on KVM , a small sized Linux kernel, and a stripped down version of Qemu . What baffled me was the speed at which the virtual machine would fire up and run the service. The whole process is to be compared…

203

An History of Nvidia Stream Multiprocessor

I spent last week-end getting accustomed to CUDA and SIMT programming. It was a prolific time ending up with a Business Card Raytracer running close to 700x faster [1] , from 101s to 150ms. This pleasant experience was a good pretext to spend more time on the topic and learn about the evolution of Nvidia architecture…

210

Durability: NVMe Disks

Durability is the guarantee that data can be accessed after a failure. It seems like this should be very simple: either your system provides durable data storage, or it does not. However, durability is not a binary yes/no property, and instead should be defined as the kinds of failures you want your data to survive…