Multicore Synchronization - The Lesser-Known Primitives
Offered By: CppNow via YouTube
Course Description
Overview
Explore advanced multicore synchronization primitives in this 46-minute conference talk from C++Now 2017. Delve into lesser-known synchronization mechanisms and their performance properties, with a focus on practical challenges faced by engineers implementing them. Learn about load-linked store conditional operations, pause instructions, prefetching, various lock types including spinlocks and scalable locks, and safe memory reclamation techniques. Examine performance comparisons, latency considerations, and runtime behavior of different synchronization approaches. Gain insights from real-world examples drawn from the Concurrency Kit project, used in mission-critical systems processing billions of transactions daily. Discover resources for further study and open-source implementations to enhance your understanding of complex concurrent systems in C++.
Syllabus
Introduction
Agenda
Before Standard Atomic
After Standard Atomic
LoadLinked Store Conditional
Pause Instructions
PrefetchW
Questions
Primitives
SpinLock and Mutex
Lock
Scalable Locks
Asymmetric Locks
ReadWrite Lock
Sequence Lock
Stronger Progress Guarantees
Safe Memory Reclamation
ReadReclaim Races
HazardPointers
Logical Physical Delete
Grace Period Detection
Read Lock
Performance Comparison
LOC Freedom
Block Freedom
Latency
Runtime
Bring Buffer
Hash Tables
Constraints
Memory Management
Performance
Open Source
Resources
Taught by
CppNow
Related Courses
Your Favorite Undefined Behavior in C++CppNow via YouTube Under the Hood - Assembly, System Calls, and Hardware in C++
CppNow via YouTube Carbon Language Successor Strategy - From C++ Interop to Memory Safety
CppNow via YouTube Value Oriented Programming Part 1 - You Say You Want to Write a Function
CppNow via YouTube Introducing a Memory-Safe Successor Language in Large C++ Code Bases
CppNow via YouTube