Frictionless Allocators
Offered By: CppNow via YouTube
Course Description
Overview
Explore the intricacies of allocator-aware software in C++ through this comprehensive conference talk from CppNow 2021. Delve into the benefits of user-controlled memory allocation strategies and address the complexities hindering widespread adoption. Examine sources of friction in allocator-aware code, discover potential language extensions for cleaner design expression, and preview proposals for C++23 and beyond. Learn from early prototype implementations and gain insights into judging proposal maturity. Benefit from Alisdair Meredith's expertise as he discusses the evolution of allocator support, polymorphic allocator models, and the BDE project at BloombergLP. Understand the importance of allocator awareness, explore performance implications, and uncover limitations in current implementations while envisioning an ideal model for future C++ development.
Syllabus
Intro
Frictionless Allocators
Outline of Talk
What is an allocator?
Why Do We Want Allocators?
A Faster Allocator
Performance
Special Memory
Emery Berger
Initial empirical results
Early Results
Allocator Traits (since 2011)
How did we improve support in C++17
How does pmr work?
memory_resource
Standard Resources
Idiom and usage of pmr
Quick Example
Scoped Allocator Model
Limitations of pmr
Bloomberg Experience
Unsupported use cases
Allocator Propagation
Complexity of Propagation
Syntactic overhead is high
Copy Constructor Issue
Ideal Model
Allocator Awareness
Why Implicit from Members?
Allocator Aware Properties
Simplifying Construction
Worked Example
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