C++ STL best and worst performance features and how to learn from them

EN / Day 2 / 17:00 / Track 2

We are going to discuss the cases when C++ STL is fast and not enough — due to some standard reasons or compiler optimizations. We will consider algorithms, containers, strings, triviality of types, memory management, atomics among all popular STLs (libcxx, libstdcxx, Microsoft STL, EASTL). We will see what are the best practices, where the violation of "you don't pay for what you don't use" takes place, where the compilers cannot optimize code due to fundamental reasons or where they overthink themselves.

This talk will be useful to all kinds of developers to know and learn some bad and good performance techniques from STL.