HN 精选

CppCon 2014: Mike Acton "Data-Oriented Design and C++"

CppCon
9 人推荐 · 跨 9 个月 · 2015–2026
软件架构与系统设计软件性能与系统优化系统编程语言(C/C++、Rust、Go)
CppCon 2014: Mike Acton "Data-Oriented Design and C++"

中文导读

Insomniac Games 的 Mike Acton 提出,程序的本质就是转换数据。他在演讲中尖锐地指出,很多主流 C++ 面向对象的写法在极致追求性能的游戏开发中反而成了阻碍,并深入剖析了 CPU 缓存机制、内存数据排布以及编译器的现实局限。

为什么 HN 推它

哪怕 Acton 说话直切要害、毫不留情,这期演讲依然是 HN 社区公认讨论面向数据设计(DOD)与贴近底层硬件调优的必看经典。

「想要建立对高吞吐系统性能直觉,这是门槛最低、吸收最快的一课。」HN 网友原话:one of the most digestible ways to start thinking about performance in high throughput systems
英文原摘要(HackerTube / Claude 整理)

Mike Acton of Insomniac Games argues that a program's purpose is transforming data, and shows how common C++ approaches work against that in performance-critical game development. He covers cache behavior, data layout and the limits of compilers.

It is the go-to talk HN points to for data-oriented design and hardware-aware performance thinking, despite Acton's blunt style.

HN 上的提及

rec yoklov · 2015-03 · HN 原文
For more on this approach, see
rec harry8 · 2015-05 · HN 原文
Mike Acton being aggressively opinionated on the subject, but the lecture is really good
reference ndh2 · 2017-02 · HN 原文
The problem is row-based vs column-based. Array of structs vs Structure of arrays.
reference katastic · 2017-10 · HN 原文
strong_rec zengid · 2018-04 · HN 原文
Thought I'd add a gem from Mike Acton: Data-Oriented Design and C++

相关视频