YoVDO

Smarter C++ Atomic Smart Pointers - Efficient Concurrent Memory Management

Offered By: CppCon via YouTube

Tags

C++ Courses Memory Management Courses Concurrent Programming Courses Lock-free Programming Courses

Course Description

Overview

Save Big on Coursera Plus. 7,000+ courses at $160 off. Limited Time Only!
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 Programming
University 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