HackerTubewatch
Surprise me
Frame from code::dive conference 2014 - Scott Meyers: Cpu Caches and Why You Care Plays via YouTube's privacy-enhanced embed

code::dive conference 2014 - Scott Meyers: Cpu Caches and Why You Care

NOKIA Technology Center Wrocław
Talks
YouTube
3 HN users recommended this talk3 months2018–2023 score 3.5
Years with an HN recommendation, 2007–2026

HN points to it as the go-to explanation of why memory layout beats pointer-chasing structures on real hardware.

Scott Meyers explains how CPU caches work and why they matter for performance, covering cache levels, access speeds, associativity, and effects in multithreaded code. The focus is C++ and cache-aware, data-oriented programming.

“Scott Meyers had a very good talk which contained this information” (HN, 2023)

1 strong recommendations · 2 recommendations · 2 citations · 1 critical · Talks · intermediate

6 Hacker News comments

From the HN archive; up to 20 kept per video, favoring different commenters. Recommendations first.

@drainyard Oct 2018 Strongly recommends
on HN thread Ask HN: What are some of the best technical talks you've heard?
Two of my favorites: code::dive conference 2014 - Scott Meyers: Cpu Caches and Why You Care: [this video] CppCon 2014: Mike Acton "Data-Oriented Design and C++": [link] They're mostly about C++ and cache aware/data oriented programming.
Talk on cache-aware, data-oriented programming.
@jimmy1 Apr 2018 Recommends
on HN thread Intel brings a six-core i9 CPU to laptops
Here is a good visualization on access speeds for each level of cache, then main memory. Now take the main memory access time and essentially double it (for your state of the art SSD's today) and that's the access speed. [this video]
Visualizes access speeds across cache levels and main memory.
@coppsilgold Apr 2023 Recommends
on HN thread Beautiful branchless binary search
Cache associativity, conflict miss. You have too many memory addresses mapping to the same cache lines all being used together at the same time. Scott Meyers had a very good talk which contained this information: < [this video] >
Covers cache associativity and conflict misses.

Citations, criticism and jokes

@reificator Dec 2020 Cites it
on HN thread An iOS zero-click radio proximity exploit odyssey
Read more
> If your primary operation is inserting at a random location in the list, linked lists are faster than arrays at large sizes. You avoid having to move all the memory after the index you are modifying (to make space for the inserted element). This is false. Big O notation says it should be true, you'll get marked wrong if you say arrays are faster in your algorithms & data structures final, but when you're running on actual hardware the array is faster at all sizes of n and as n becomes larger so does the gap in performance. Here is a talk[0] by Bjarne Stroustrop (Creator of C++) that even includes imaginary graphs demonstrating this phenomenon. If you want a visual for what the missing graph was supposed to look like, here's a similar one.[1] Here's another video[2] by Scott Meyers (Author of Effective C++) that goes into more detail about why this happens. [0]: [link] [1]: [link] [2]: [this video]
Explains why arrays beat linked lists on real hardware.
@insanitybit Nov 2022 Pushes back
on HN thread In defense of linked lists
Read more
I don't buy this. [this video] Prefetching in CPUs predates this talk. [link] That talk is 2018. Cache prefetching works best for linear accesses like with a vector, not for random pointer lookups. Prefetchers are also going to have an extra harder time with double indirection since they're unable to see which value is going to be fed to the lea. Prefetching is also expensive in and of itself, the CPU doesn't do it unless you're already incurring cache hits. This makes cache misses even worse . There are also multiple prefetchers in the CPU and the L1 prefetcher is very basic and is only going to help with contiguous accesses. Your allocator might be doing some nice things for you that let the one of the L2 prefetchers help, I would expect that you'll see better L2 performance due to prefetching. If you have an example of a linked list being as fast as a vector for iteration, please do show it.

Video list and Hacker News comment labels from HackerTube (prompted by @karpathy), released under ODC-By 1.0, built on the open-index/hacker-news archive. Hacker News data is provided by Y Combinator; comments remain the work of their authors. Video titles, channel names and thumbnails belong to their creators and are shown via YouTube. HackerTube Watch is an unofficial edition. Data export of 2026-10-31.

Keyboard shortcuts

/
Search
j k
Next / previous video
r
Surprise me
l
Like (video page)
w
Watch later (video page)
?
This help
Esc
Close