HackerTube.dev

Andrew Kelley: A Practical Guide to Applying Data Oriented Design (DoD)

ChimiChanga · 415.9K views · 2024-07-13 · 46:40

Open on YouTube ↗

If playback is restricted in your region, try opening the original video. Use Mark watched to add it to your marked videos.

Overview

Andrew Kelley, creator of Zig, presents practical data-oriented design techniques for shrinking memory footprint and making programs cache friendly. He ends with a case study of how these ideas sped up the Zig compiler.

On Hacker News

HN cites it as one of the best talks on data-oriented design, applying struct-of-arrays and compact data layouts to a real compiler.

Recommended by 4 HN people across 5 months · HN mentions 2024–2026

Topics

Search by tags

What people said

Rendello · 2026-07 · Recommendation

A good introduction to SoA (for anyone curious) are the two most famous Data-Oriented Design talks by Mike Acton (game engine dev) [1] and Andrew Kelley (Zig lead dev) [2] respectively. I read a book book about DoD [3] really which confused me at first with all its talk about database table design (in a book about a high-performance C++ game engine?), but when it finally clicked it was amazing. The point is that you want to think hard about your access patterns and what could constitute good "primary keys", then model it accordingly. SoA ends up being useful a lot of the time, because having your data in homogeneous arrays/vectors is great for cache locality and branch elimination. Even without SIMD you can get huge speedups from that, but that's also where your compiler (or you as a programmer) can get incredible SIMD gains. SoA is not a silver bullet as it may not align well with your access patterns, but it can great to add to your toolkit. --- Mike Acton: Data-Oriented Design and C++ : [LINK] Andrew Kelley: A Practical Guide to Applying Data Oriented Design : [VIDEO] Richard Fabian: Data-Oriented Design : [LINK]

Read the original HN comment ↗
gethly · 2026-01 · Recommendation

SoA is nothing new. Not sure why it needs to be even discussed... Anyway, here's few videos of interest: [LINK] [VIDEO] Odin also supports SoA natively [LINK]

Read the original HN comment ↗
Rendello · 2025-10 · Recommendation

I recently spent a week or so creating a library for my project. There's not a lot of code, but it was hard to reason about the data model, what I wanted the API to look like, and what I wanted actually rendered on the other side. I was proud after getting it working, but when I had to run dozens of files through it, it was horribly slow. I don't tend to write a lot of hot code, so I was excited by the fact I had to profile it and make it efficient. I decided that I should rewrite the system, as my mental model had improved and the code was doing a lot more than it should be doing for no reason. I've spent the last few days redesigning it according to Data-Oriented Design. I'm trying to get the wall-clock time down by more than an order of magnitude. I'm not sure how it's going to turn out, wish me luck :) Since I mentioned DoD, these three links will probably come up in conversation: Mike Acton's famous performance talk: [LINK] DoD in the Zig compiler: [VIDEO] The DoD book: [LINK]

Read the original HN comment ↗

Sources

Video by ChimiChanga, played through YouTube.

Data and selection notes

HN summaries and labels may contain AI errors. HN dates refer to discussions, not video publication.

HN Library: HackerTube export (2026-10-31) and open-index/hacker-news. Upstream summaries and classifications may contain AI errors.

Views, duration and playback status refresh separately from the published catalog. When an update fails, existing data remains visible.

Selection checks
  • SaaS & AI candidates: Topic keywords do not match
  • Editor-approved picks: Editorial review is required

Rule matches identify candidates. They do not guarantee video quality or financial results.

About the library and its sources