A list of usefull stuffs/talks i collected about lock-free, concurrency and optimizations:
< https://github.com/nicolasdanet/Dummy/blob/master/RealTime.md >
Thanks for sharing other free resources.
A list of usefull stuffs/talks i collected about lock-free, concurrency and optimizations:
< https://github.com/nicolasdanet/Dummy/blob/master/RealTime.md >
Thanks for sharing other free resources.
Thanks for sharing, thats some meaty reading.
IMHO the talks about memory_order_relaxed and zombie pointers (from Michael Wong, Hans Boehm, Paul E. McKenney) are interesting even if you are already familiar with atomic stuffs!
FYI: i renamed the file < Dummy/Links.md at master · nicolasdanet/Dummy · GitHub >.
Note that i added stuff about Computer Architecture also. For instance < https://www.youtube.com/@prof.dr.benh.juurlink5459/playlists >. Very interesting IMHO if you are curious (like me) about pipelining…
The Padraic Edgington’s blog is a good introduction also < Dummy/Links.md at master · nicolasdanet/Dummy · GitHub >.
I quit GitHub ; list of talks below.
Links.txt (20.9 KB)
The Golden Rules of Audio Programming - Pete Goodliffe - ADC16 - YouTube
Real-time Confessions in C++ - Fabian Renn-Giles - ADC23 - YouTube
What is Low Latency C++? (Part 1) - Timur Doumler - CppNow 2023 - YouTube
What is Low Latency C++? (Part 2) - Timur Doumler - CppNow 2023 - YouTube
Using Locks in Real-Time Audio Processing, Safely - Timur Doumler - ADC20 - YouTube
A Lock-free Atomic shared_ptr - Timur Doumler - CppNow 2022 - YouTube
Introduction to Wait-free Algorithms in C++ Programming - Daniel Anderson - CppCon 2024 - YouTube
C++ and Beyond 2012: Herb Sutter - atomic Weapons 1 of 2 - YouTube
C++ and Beyond 2012: Herb Sutter - atomic Weapons 2 of 2 - YouTube
CppCon 2014: Herb Sutter “Lock-Free Programming (or, Juggling Razor Blades), Part I” - YouTube
CppCon 2014: Herb Sutter “Lock-Free Programming (or, Juggling Razor Blades), Part II” - YouTube
Introduction to Lock-free Programming - Tony van Eerd - YouTube
CppCon 2014: Tony Van Eerd “Lock-free by Example” - YouTube
CppCon 2017: Tony Van Eerd “An Interesting Lock-free Queue - Part 2 of N” - YouTube
C++Now 2018: Tony Van Eerd “The Continuing Saga of the Lock-free Queue: Part 3 of N” - YouTube
CppCon 2016: Fedor Pikus “The speed of concurrency (is lock-free faster?)" - YouTube
Lightning Talk: A Spinlock Implementation - Fedor Pikus - CppNow 2022 - YouTube
CppCon 2015: Michael Wong “C++11/14/17 atomics and memory model…" - YouTube
CppCon 2015: Paul E. McKenney “C++ Atomics…" - YouTube
CppCon 2016: Hans Boehm “Using weakly ordered C++ atomics correctly" - YouTube
A Relaxed Guide to memory_order_relaxed - Paul E. McKenney & Hans Boehm - CppCon 2020 - YouTube
Catching Real-time Safety Violations in C++ - Dave Rowland - C++ on Sea 2024 - YouTube
RADSan: A Realtime-Safety Sanitizer - David Trevelyan & Ali Barker - ADC23 - YouTube
Matthias Killat - Lock-free programming for real-time systems - Meeting C++ 2021 - YouTube
Forward Progress Guarantees in C++ - Olivier Giroux - CppNow 2023 - YouTube
Running High Channel Count Audio Applications on Linux RT - Olivier Petit - ADC23 - YouTube
CppCon 2018: Fedor Pikus “Design for Performance” - YouTube
Branchless Programming in C++ - Fedor Pikus - CppCon 2021 - YouTube
Undefined Behavior in C++: A Performance Viewpoint - Fedor Pikus - CppNow 2022 - YouTube
CppCon 2016: Timur Doumler “Want fast C++? Know your hardware!" - YouTube
code::dive conference 2014 - Scott Meyers: Cpu Caches and Why You Care - YouTube
Optimising a Real-Time Audio Processing Library - Dave Rowland - ADC22 - YouTube
An Engineering Approach to Optimising C++ - Dave Rowland - C++ on Sea 2023 - YouTube
C++20 Likely and Unlikely: A Journey Through Branch Prediction and Compiler Optimizations - YouTube
LLVM Optimization Remarks - Ofek Shilon - CppCon 2022 - YouTube
A More Intuitive Approach to Optimising Audio DSP Code - Gustav Andersson - ADC23 - YouTube
When Nanoseconds Matter: Ultrafast Trading Systems in C++ - David Gross - CppCon 2024 - YouTube
CppCon 2016: Chandler Carruth “High Performance Code 201: Hybrid Data Structures" - YouTube
CppCon 2017: Chandler Carruth “Going Nowhere Faster” - YouTube
CppCon 2019: Chandler Carruth “There Are No Zero-cost Abstractions” - YouTube
Understanding Compiler Optimization - Chandler Carruth - Opening Keynote Meeting C++ 2015 - YouTube
CppCon 2018: Matt Godbolt “The Bits Between the Bits: How We Get to main()” - YouTube
C++Now 2018: Matt Godbolt “What Else Has My Compiler Done For Me Lately?” - YouTube
std::jthread - I Told You Concurrency Is Tricky - Nico Josuttis [ ACCU 2021 ] - YouTube
Back to Basics: Concurrency - Mike Shah - CppCon 2021 - YouTube
Modern C++ (cpp) Concurrency - YouTube
Back to Basics: Concurrency - Arthur O’Dwyer - CppCon 2020 - YouTube
Concurrency in C++: A Programmer’s Overview (part 1 of 2) - Fedor Pikus - CppNow 2022 - YouTube
Concurrency in C++: A Programmer’s Overview (part 2 of 2) - Fedor Pikus - CppNow 2022 - YouTube
Safety: off — How not to shoot yourself in the foot with C++ atomics - Anthony Williams - YouTube
CppCon 2016: Anthony Williams “The Continuing Future of C++ Concurrency" - YouTube
CppCon 2017: Anthony Williams “Concurrency, Parallelism and Coroutines” - YouTube
Concurrency in C++20 and Beyond - Anthony Williams - CppCon 2019 - YouTube
An Introduction to Multithreading in C++20 - Anthony Williams - CppCon 2022 - YouTube
Designing for C++ Concurrency Using Message Passing - Anthony Williams - ACCU 2023 - YouTube
The Catalog of Design Patterns
Interview with Nicolai Josuttis for Meeting C++ 2024
C++Now 2017: Tony Van Eerd “Postmodern C++" - YouTube
C++Now 2018: Tony Van Eerd “Words of Wisdom” - YouTube
Keynote: SOLID, Revisited - Tony Van Eerd - [CppNow 2021] - YouTube
Value Oriented Programming Part V - Return of the Values - Tony Van Eerd - C++Now 2024 - YouTube
CppCon 2017: Klaus Iglberger “Free Your Functions!” - YouTube
[MUC++] Klaus Iglberger - “Embrace No Paradigm Programming!” - YouTube
Breaking Dependencies: The SOLID Principles - Klaus Iglberger - CppCon 2020 - YouTube
Back to Basics: Designing Classes (part 1 of 2) - Klaus Iglberger - CppCon 2021 - YouTube
Back to Basics: Designing Classes (part 2 of 2) - Klaus Iglberger - CppCon 2021 - YouTube
Breaking Dependencies: Type Erasure - A Design Analysis - Klaus Iglberger - CppCon 2021 - YouTube
Breaking Dependencies - The Visitor Design Pattern in Cpp - Klaus Iglberger - CppCon 2022 - YouTube
The Singleton Pattern - Anti-Pattern or Solution? - Klaus Iglberger - C++ on Sea 2022 - YouTube
Design Patterns: Facts and Misconceptions - Klaus Iglberger - CppCon 2021 - YouTube
Design Patterns: Examples in C++ - Chris Ryan - ACCU 2023 - YouTube
Finding Your Codebases C++ Roots - Katherine Rocha - CppCon 2023 - YouTube
Dependency Injection in C++ - A Practical Guide - Peter Muldoon - C++Now 2024 - YouTube
Developing Better C++ Code by Isolating Decisions - Michael Okyen - C++Now 2024 - YouTube
Reintroduction to Generic Programming for C++ Engineers - Nick DeMarco - C++Now 2024 - YouTube
C++ Should Be C++ - David Sankel - C++Now 2024 - YouTube
C++ Standard Views - Nico Josuttis - ACCU 2023 - YouTube
Understanding the Filter View to Use It Right - Nicolai M. Josuttis - ACCU 2024 - YouTube
Guide to the C++ Filter View in C++ Programming - Nicolai Josuttis - CppCon 2024 - YouTube
Why You Shouldn’t Write a DAW - David Rowland - ADC23 - YouTube
Type punning in modern C++ - Timur Doumler - CppCon 2019 - YouTube
Standard Attributes in C and C++ - Timur Doumler - ACCU 2023 [Rerelease] - YouTube
CppCon 2016: JF Bastien “No Sane Compiler Would Optimize Atomics" - YouTube
CppCon 2018: JF Bastien “Signed integers are two’s complement” - YouTube
Deprecating volatile - JF Bastien - CppCon 2019 - YouTube
Uninitialized Uses in Systems C++ Programming: The Bytes Before the C++ Types - JF Bastien - YouTube
What’s Eating My RAM? - Memory Utilization in C++ - Jianfei Pan - ACCU 2024 - YouTube
Prof. Dr. Ben H. Juurlink - YouTube
1 1 1 Definition And Objectives - YouTube
2 1 1 ILP Concepts and Challenges - YouTube
4 1 1 Multicore motivation - YouTube
The Scientist and Engineer’s Guide to Digital Signal Processing’s Table of Content
The std::memory_order talk linked there is great, thanks for posting!
IMHO it is not his most informative talk ; but there’s a reference to a book at the end i never heard about. I have just bought it…
The rust one? Me too
Yep, the Rust one ; I plan to learn Rust first!
For memory (as i’m always searching the links)…
Thanks for the post. Here is an online version of the book mentioned (free, but you could also buy one to support the author):
Hopefully I will start reading this weekend ![]()
The author is also on an episode of cppcast here with timur if anyone is interested: Episode 382 : CppCast