Explore the intricacies of building a Single Producer Single Consumer Lock-free Wait-free FIFO from scratch in this CppCon 2023 conference talk by Charles Frasch. Discover the benefits of creating a custom implementation, including gaining a gentle introduction to lock-free programming, exploring performance optimizations, and addressing specific requirements not met by off-the-shelf solutions. Follow the step-by-step development process, starting with a simple circular FIFO and progressing to a thread-safe, lock-free, and wait-free version. Delve into cache coherency issues, particularly false sharing, and learn about additional optimizations to meet specific needs. Compare the performance of the custom FIFO with existing implementations and gain insights into thread safety, data races, object lifetime, and relaxed atomics. Benefit from Charles Frasch's extensive experience in financial technology and high-performance infrastructure as he shares valuable knowledge on modern C++ programming techniques.
Overview
Syllabus
Single Producer Single Consumer Lock-free FIFO From the Ground Up - Charles Frasch - CppCon 2023
Taught by
CppCon