Taming dynamic memory - An introduction to custom allocators

Are you going?

13 people going


29 Avenue John F. Kennedy

29 Avenue John F. Kennedy · Luxembourg

How to find us

Tram stop Kirchberg, Universiteit. Use the back entrance of the building as the front entrance is closed in the evenings.

Location image of event venue


Andreas Weis 6:49 PM
Hi Mats,
sure here you go:
Taming dynamic memory - An introduction to custom allocators

Dynamic memory allocation is a feature that is often taken for granted. Most developers use some form of new or malloc every day, usually without worrying too much what goes on behind the scenes. But what about those situations where the built-in mechanisms are not good enough, be it for reasons of performance, safety, or due to restrictions of the target hardware?

In this talk we will explore how custom allocators can be used to overcome those issues. We will explain how basic allocation techniques like pooling and monotonic allocation behave with regards to performance and reliability. We will take a look at some of the technical challenges behind allocators, like the different forms of alignment and the way that the standard library manages stateful allocators. And finally we will take a look at some popular allocator implementations and how to integrate them with a modern C++ codebase.

Andreas has been writing software professionally for more than 10 years, working in areas ranging from real-time graphics to distributed systems to embedded systems. He enjoys hiding complex functionalities behind powerful type-rich interfaces and likes it very much when the compiler finds his bugs for him. Andreas is one of the co-organizers of the Munich C++ user group, where he gets to discuss these topics with others on a regular basis.