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
Computer GraphicsUniversity of California, San Diego via edX Intro to Parallel Programming
Nvidia via Udacity Initiation à la programmation (en C++)
École Polytechnique Fédérale de Lausanne via Coursera C++ For C Programmers, Part A
University of California, Santa Cruz via Coursera Introduction à la programmation orientée objet (en C++)
École Polytechnique Fédérale de Lausanne via Coursera