When you need a container, pick std::vector<T>
by default. This is common advice.
Why? Because std::vector<T>
is cache-friendly.
This talk will quickly explain what it means, why it is so important, and how to write cache-friendly code yourself. We will look at the design and implementation of awesome cache-friendly containers the standard library lacks, a range of tricks (and hacks) to fit as many objects into the cache as possible, as well as big picture structural program changes for data oriented design.
This will be a practical hands-on talk featuring a lot of code and benchmarks. Everything implementation presented is available in a library for you to use.