Parallel Game Engine Design
summary
Claims that game engines should use a sized thread pool matching hardware threads and a job system with lock-free queue to scale from dual‑core to 32+ cores; shows a wait‑free refcount variant using per‑thread counters and phase barriers (trades memory for eliminated atomics); uses Chrome tracing to visualize thread timelines and an intrusive profiler for hotspots; demonstrates building a call‑buffer/future compiler that extracts a directed acyclic graph and schedules jobs, with Lua bindings to keep high‑level code serial.
AI-written summary · about
chapters (11)
- 0:00Intro
- 3:54Thread per system
- 9:36Job system
- 14:03Thread safe
- 22:23Atomics (spoiler)
- 27:25Lock-free definition
- 30:32Wait free reference counting
- 38:10Mutable vs Immutable
- 42:24Spaghetti flow?
- 44:37Untangling spaghetti flow
- 49:29Directed acyclic graphs
related talks
01h 01mGame engine using STD C++ 11
57mOptimising Data Building In Game Development
39mA revolution is coming! Writing performant and safe multi threaded code in Unity
01h 08mBetter Code: Concurrency
59mAn Introduction to Multithreading in C++20
01h 08mImplementation of a multithreaded compile-time ECS in C++14
48mVisualiser l'API de concurrence Java
48m“Is Parallel Programming still hard? PART 2 of 2”
