HackerTube
HomeLongsLikedHistoryWatch laterCategoriesPlaylistsSettings
Playlists

Mechanical Sympathy

Curated by Claude · 11 videos · 8 hr 23 min

A path through the performance talks Hacker News keeps linking whenever someone asks why software got slow. It starts with mindset (don't do needless work), moves to the memory hierarchy and data-oriented design, then to measuring honestly, and ends with two console war stories where all of it pays off.

Play all on YouTube
  1. 1
    Refterm Lecture Part 1 - Philosophies of Optimization18:41

    Refterm Lecture Part 1 - Philosophies of Optimization

    93K views • 5 years ago
    Molly Rocket
    Casey Muratori's first refterm lecture lays out philosophies of optimization, distinguishing optimization from non-pessimization, which means avoiding needless work. It uses his fast terminal renderer project to show how fast computers really are.

    An 18-minute opener that separates real optimization from 'non-pessimization', the idea HN cites most often to explain why modern software is slow.

  2. 2
    New computers don't speed up old code19:25

    New computers don't speed up old code

    187K views • 1 year ago
    Matthias random stuff
    Matthias Wandel tests old and new code on a range of PCs, including a new mini PC, to measure how much faster modern hardware really is. He also shows optimization techniques such as branchless code, with benchmark programs on GitHub.

    Matthias Wandel benchmarks old and new PCs and finds branchy code barely got faster in 15 years, which is why the rest of this list matters.

  3. 3
    code::dive conference 2014 - Scott Meyers: Cpu Caches and Why You Care1:16:58

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

    231K views • 11 years ago
    NOKIA Technology Center Wrocław
    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.

    The plain explanation of cache levels and associativity that HN points to for why memory layout beats pointer chasing.

  4. 4
    CppCon 2014: Mike Acton "Data-Oriented Design and C++"1:27:46

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

    862K views • 12 years ago
    CppCon
    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.

    With the cache model in hand, Acton's blunt argument that a program's job is transforming data lands much harder; it is HN's default data-oriented design talk.

  5. 5
    Andrew Kelley: A Practical Guide to Applying Data Oriented Design (DoD)46:40

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

    415K views • 2 years ago
    ChimiChanga
    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.

    The practical follow-up to Acton: struct-of-arrays and compact layouts applied to a real compiler, with measured wins in Zig.

  6. 6
    CppCon 2017: Matt Kulukundis “Designing a Fast, Efficient, Cache-friendly Hash Table, Step by Step”59:34

    CppCon 2017: Matt Kulukundis “Designing a Fast, Efficient, Cache-friendly Hash Table, Step by Step”

    137K views • 9 years ago
    CppCon
    Matt Kulukundis explains how Google designed SwissTable, a fast, cache-friendly hash table, step by step from std::unordered_map. The talk covers open addressing, SIMD probing and the tradeoffs of changing a fundamental data structure.

    One data structure redesigned around the cache, step by step; HN calls it the definitive explanation of SwissTable, now behind Rust's and Go's maps.

  7. 7
    How to Speed up a Python Program 114,000 times.59:11

    How to Speed up a Python Program 114,000 times.

    171K views • 13 years ago
    InfoQ
    David Schachter describes how he made a data-collection Python program run 114,000 times faster, drawing on decades of experience. The talk covers pipelining, cache effects and other optimization lessons.

    Proof this is not just a C++ story: a generalist's tour of pipelining and cache effects that HN liked for its humor and hardware knowledge.

  8. 8
    "How NOT to Measure Latency" by Gil Tene42:59

    "How NOT to Measure Latency" by Gil Tene

    119K views • 11 years ago
    Strange Loop Conference
    Gil Tene of Azul Systems explains common pitfalls in measuring latency and response time, including why averages mislead and the problem of coordinated omission. He introduces open source tools like HdrHistogram for better measurement and reporting.

    The turn from making things fast to knowing whether they are; commenters call the coordinated omission material life changing.

  9. 9
    "Performance Matters" by Emery Berger42:15

    "Performance Matters" by Emery Berger

    502K views • 7 years ago
    Strange Loop Conference
    Emery Berger explains why performance is hard to measure and deliver on modern hardware, showing how code layout and alignment can swamp optimization effects. He presents Stabilizer for statistically sound evaluation and Coz, a causal profiler.

    Shows that code layout alone can swamp your optimization, and offers causal profiling as the fix; HN's standard answer to mysterious benchmark swings.

  10. 10
    FIXING the ENTIRE SM64 Source Code (INSANE N64 performance)18:20

    FIXING the ENTIRE SM64 Source Code (INSANE N64 performance)

    3.2M views • 4 years ago
    Kaze Emanuar
    Kaze Emanuar explains how he rewrote and optimized the Super Mario 64 source code so it runs far faster on real N64 hardware. He covers performance bottlenecks and fixes in detail for his ROM hacks.

    Everything above applied to a real console: Kaze finds bus contention and easy wins that make Mario 64 render several times faster.

  11. 11
    How Crash Bandicoot Hacked The Original Playstation | War Stories | Ars Technica31:37

    How Crash Bandicoot Hacked The Original Playstation | War Stories | Ars Technica

    5.2M views • 6 years ago
    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. They overwrote Sony library code in RAM, built custom animation compression, and streamed assets around slow seek times.

    The closer and the most-recommended war story here: Andy Gavin overwriting Sony's own library code in RAM to make the game fit.