
—
Discussion & Comments: https://www.reddit.com/r/cpp/
—
Presentation Slides, PDFs, Source Code and other presenter materials are available at: https://github.com/CppCon/CppCon2019
—
The C++ standard library has supported custom allocators for as long as C++ itself has had a standard. Support for plugging in custom allocators has improved with each release, culminating (so far) in the 'pmr' allocator model in C++20 (with significant support in C++17). The substantial performance benefits of use of allocators (when used appropriately) are well-documented. Moreover, there are a variety of collateral benefits to clients -- such as rapid prototyping of alternative allocation strategies -- that make their use even more compelling. Still, the real-world costs associated with orchestrating the integration of allocators throughout a code base, including training, supporting tools, enlarged interfaces (and contracts), and a heightened potential for inadvertent misuse cannot be ignored. What's more, despite strong motivation to support allocator usage uniformly, there are corners of the C++ language (e.g., aggregates, lambda expressions, compiler-generated constructors) where the grammar simply doesn't admit them. Those that put up with these substantial cost and annoying inconsistencies do so because the need the manifest value that only allocators can provide, while others make due without.
But what if there were some feasible way to eliminate most of the real-world costs, leaving all the benefits to be enjoyed by everyone if and as desired? What would the skeptics say then?
In this session, Alisdair Meredith and Pablo Halpern will delve into the issues holding back widespread use of allocators, and present some ground-breaking ideas on how the language itself might move forward, making custom allocator support transparent in the majority of cases. We will discuss our ongoing work exploring this language-supported memory-allocator design space, including early experiments with the GCC and Clang compilers, and finally speculate on possible benefits to important areas of C++ beyond memory allocation alone.
Although not a prerequisite, we recommend attending John Lakos's talk "Value Proposition: Allocators-Aware (AA) software", given earlier in the week.
—
Alisdair Meredith
BloombergLP
Senior Developer
Alisdair Meredith is a software developer at BloombergLP in New York, and the C++ Standard Committee Library Working Group chair.
He has been an active member of the C++ committee for just over a decade, and by a lucky co-incidence his first meeting was the kick-off meeting for the project that would become C++11, and also fixed the contents of the original library TR.
He is currently working on the BDE project, BloombergLP's open source libraries that offer a foundation for C++ development, including a standard library implementation supporting the polymorphic allocator model proposed for standardization.
—
Videos Filmed & Edited by Bash Films: http://www.BashFilms.com
c thomas howell CppCon 2019: Alisdair Meredith, Pablo Halpern “Getting Allocators out of Our Way” | |
28 Likes | 28 Dislikes |
1,119 views views | 63.8K followers |
Education | Upload TimePublished on 4 Oct 2019 |
Related keywords
c train schedule,c diff,c corporation,c town,c train service,video services uiuc,video services unlimited,c section scar,c to k,video services inc,video services contract,c battery,video services of america,c span,video services on switch,video services list,c street,c suite,video services group,video services of va,video services near me,video services like netflix,c chord guitar,video services boise,c train status,video services conroe tx,video services forum,c section,video services other than youtube,video services group inc,c train,video services like youtube,c to f,c stock,c reactive protein,video services before youtube,video services pricing,video services contract template,c elegans,