Skip to content
lectern.tv
Study notebook

Press N to jot a timestamped note or B to pin a moment while watching.

Mechanical Sympathy: Designing Software for Modern CPU Caches

Co-Creator of LMAX Disruptor & Aeron

56:55·2016·undergraduate level·Conference Talk

Demonstrates how cache lines, false sharing, store buffers, branch prediction, and lock-free ring buffers govern orders-of-magnitude latency differences on modern hardware.

What does it really mean to design software for high-performance? Performance is such a generic and misunderstood subject. In this talk the subject of software performance will be explored. We will focus on what is means to achieve sufficient response times, throughput, and scalability.

Once the theory is out of the way we will dig into how modern hardware works and what we need to know about abstractions mapping to our software designs. These abstractions are the key to the models our code represents. The author has not meet many abstraction layers he did not enjoyed violating. There is a good reason for this. So many of our abstractions are leaky or just plain wrong.

Comments

Add a comment...Sign in