System Programming

Resources discussing low-level programming tasks not directly related to graphics and game programming, but that are often crucial for building graphics systems and game engines

  • Better Code: Concurrency - Sean Parent

    This talk uses the primitives supplied by C++14 to build a simple task system. It discussing the issues with usage of mutexes for shared data and introducing concurrent queues and thread pools

    • video
    • c++
  • Data-Oriented Design

    This book is a fabulous read to get a deeper understanding of what data-oriented design is about. It goes beyond the often-mentioned cache misses, SOA, ECS, or anti-OOP rants.

    • book
  • Memory allocation strategies article series

    A series of articles talking about custom memory allocators, starting from the simple arena allocators, to more complicated ones like the stack allocators, pool allocators, free list allocators, and finally buddy allocators.

    • article
  • Destiny's Multithreaded Rendering Architecture (GDC 2015)

    Talks about the design and multithreaded renderer architecture for the game Destiny