Best Software performance & optimization Videos
「Software performance & optimization」下面有123部被不同的人、在不同月份推荐过的视频。挑的时候先看对象:入门1部,适合还没学过的人;进阶56部,适合已经懂术语的人;普通向10部,按兴趣就能看;更硬的56部,留给想看推导或细节的人。这一类数量最多的是演讲,所以它们的共同点是一位讲者把一个判断讲完,例子是为了撑住这个判断。常出现的频道包括CppCon、Molly Rocket、Strange Loop Conference。目录给这个主题划的范围是:Performance and optimization: profiling, benchmarks, cache efficiency, software bloat, latency, low-level optimization, SIMD, Casey Muratori, Handmade Hero, why software is slow.如果只看三部,就从《How Python was Shaped by leaky Internals, Armin Ronacher, Flask framework》开始,它负责把问题讲出画面;然后看《CppCon 2015: Andrei Alexandrescu “std::allocator...”》,换一种讲法或例子;最后看《Preventing the Collapse of Civilization / Jonathan Blow (Thekla, Inc)》,留给已经有基础的人。页面按每页24部切开,顺序看的是被推荐跨越了多少个月,不是播放量。每条标题下面那一句是这部片子自己的内容说明,用来区分它在讲定义、过程、演示还是观点。点进去能看到推荐原话、原文链接和适合谁看。看的时候把强烈推荐当成有人明确叫你去看,把引用当成只是拿来举例,把批评留下来对照,不要把每条评论都当成同一力度。

How Python was Shaped by leaky Internals, Armin Ronacher, Flask framework
Armin Ronacher, creator of Flask, explains how CPython's internals and C API leak into the language's semantics.

CppCon 2015: Andrei Alexandrescu “std::allocator...”
Andrei Alexandrescu's CppCon 2015 talk argues that std::allocator is badly designed.

Preventing the Collapse of Civilization / Jonathan Blow (Thekla, Inc)
A DevGAMM talk by Jonathan Blow arguing that civilizations can lose technological capability and that software quality is already deteriorating.

"Performance Matters" by Emery Berger
Emery Berger explains why performance is hard to measure and deliver on modern hardware, showing how code layout and alignment can swamp optimization effects.

The Thirty Million Line Problem
Casey Muratori's long talk arguing that modern software has ballooned to tens of millions of lines because of hardware and OS diversity.

CppCon 2017: Matt Kulukundis “Designing a Fast, Efficient, Cache-friendly Hash Table, Step by Step”
Matt Kulukundis explains how Google designed SwissTable, a fast, cache-friendly hash table, step by step from std::unordered_map.

Erlang Factory 2014 - That's 'Billion' with a 'B': Scaling to the Next Level at WhatsApp
Rick Reed of WhatsApp explains at Erlang Factory 2014 how the service scaled to billions of messages with a very small engineering team.

How Crash Bandicoot Hacked The Original Playstation | War Stories | Ars Technica
In Ars Technica's War Stories, Naughty Dog co-founder Andy Gavin explains how the team squeezed Crash Bandicoot onto the original PlayStation.

"How NOT to Measure Latency" by Gil Tene
Gil Tene of Azul Systems explains common pitfalls in measuring latency and response time, including why averages mislead and the problem of coordinated omission.

Refterm Lecture Part 1 - Philosophies of Optimization
Casey Muratori's first refterm lecture lays out philosophies of optimization, distinguishing optimization from non-pessimization, which means avoiding needless work.

CppCon 2014: Mike Acton "Data-Oriented Design and C++"
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.

Jonathan Blow - Preventing the Collapse of Civilization (English only)
Jonathan Blow's DevGAMM 2019 talk argues that software knowledge is being lost between generations and that growing layers of abstraction could lead to a decline in technological civilization.

Casey Muratori – The Big OOPs: Anatomy of a Thirty-five-year Mistake – BSC 2025
Casey Muratori's two-hour talk tracing the history of object-oriented programming back to the 1960s and examining how its ideas, and later entity component systems, came about.

CppCon 2014: Chandler Carruth "Efficiency with Algorithms, Performance with Data Structures"
Chandler Carruth's CppCon 2014 talk on writing fast C++, explaining why data structure choice and memory layout matter more than clever algorithms.

[EPILEPSY WARNING] How fast should an unoptimized terminal run?
Casey Muratori shows how fast a terminal renderer can run, building a simple reference renderer that handles Unicode and colored text far quicker than Windows Terminal.

FIXING the ENTIRE SM64 Source Code (INSANE N64 performance)
Kaze Emanuar explains how he rewrote and optimized the Super Mario 64 source code so it runs far faster on real N64 hardware.

Simple Code, High Performance
Casey Muratori's University of Twente guest lecture is a case study in how straightforward code can cut thousands of lines and tens of seconds of runtime down to a few dozen lines running in under a second.

CppCon 2019: Chandler Carruth “There Are No Zero-cost Abstractions”
Chandler Carruth argues in a CppCon 2019 talk that C++ has no truly zero-cost abstractions.

C++ and Beyond 2012: Herb Sutter - atomic Weapons 1 of 2
Herb Sutter's deep C++ and Beyond 2012 talk on atomics and the C++ memory model, covering why programmers chasing top performance need to understand hardware ordering.

Sorting Algorithms: Speed Is Found In The Minds of People - Andrei Alexandrescu - CppCon 2019
Andrei Alexandrescu's CppCon 2019 talk revisits sorting, showing how branchless tricks, hybrid strategies and a cost metric can speed up std::sort-style algorithms on modern hardware.

Jake Archibald on the web browser event loop, setTimeout, micro tasks, requestAnimationFrame, ...
Jake Archibald's JSConf.Asia 2018 talk "In the Loop" explains the browser event loop, covering tasks, microtasks, requestAnimationFrame, and how rendering interleaves with JavaScript.

Advanced Topics in Programming Languages: A Lock-Free Hash Table
A 2007 Google Tech Talk in which Cliff Click of Azul Systems presents a lock-free concurrent hash table that scales to 768 CPUs.

CppCon 2017: Carl Cook “When a Microsecond Is an Eternity: High Performance Trading Systems in C++”
Optiver's Carl Cook explains how to build high-frequency trading systems in C++, where the critical path runs rarely but must be extremely fast.

"Outperforming Imperative with Pure Functional Languages" by Richard Feldman
Richard Feldman explains how pure functional languages can match or beat imperative ones on performance.