Smarter C++ Atomic Smart Pointers - Efficient Concurrent Memory Management
Offered By: CppCon via YouTube
Course Description
Overview
Explore efficient concurrent memory management techniques in C++ through this CppCon conference talk. Delve into the challenges of memory management in concurrent code and discover high-level abstractions like smart pointers and deferred reclamation techniques. Learn about recent library solutions that combine the advantages of various techniques, offering the ease of use of smart pointers with the performance of deferred reclamation. Examine the tradeoffs between existing methods, including atomic shared pointers and advanced techniques like hazard-pointers and RCU. Gain insights into implementing scalable concurrent code with performance comparable to expert-written code using simple abstractions. Follow along as the speaker discusses recent library interfaces, efficient implementation techniques, and explores their performance in depth.
Syllabus
Introduction
Who am I
Agenda
Smart Pointers
Shared Ownership
Concurrent Memory Management
The Fundamental Problem
Goals
Memory Management Techniques
Atomic Smart Pointers
Shared Pointer
Thread Safe
Atomic Shared Pointer
Atomic Shared Pointer Benefits
LockFree Memory Safe Stack
LockFree Implementation
Bad News
Experiment
Baseline
Alternative Techniques
Deferred Reclamation
Hazard Pointers
Performance
RCU
Mental Model
Graph
State of Things
RAII and Deferred Reclamation
Snapshot Source
Single Writer Linked List
Hazard Pointer Errors
Efficient Concurrent Memory Management
Slide Code
Performance Test
Final Remarks
Wrap Up
Taught by
CppCon
Related Courses
Heterogeneous Parallel ProgrammingUniversity of Illinois at Urbana-Champaign via Coursera Advanced Operating Systems
Georgia Institute of Technology via Udacity 計算機程式設計 (Computer Programming)
National Taiwan University via Coursera Introduction to Operating Systems
Georgia Institute of Technology via Udacity Android Performance
Google via Udacity