C++ Performance and Optimisation

Request more details:

submit request
Description:
Prerequisites:
Setup note:
This course is Linux specific because of the tools used: gcc and valgrind/cachegrind. There is no equivalent Windows version of this course.
Measurement and machines:
Measurement tools
Caches, memory, etc
Speed of C++ features
Data layout
Move semantics:
Rvalue references
Move v. copy
Handle-based classes
Rule of 3/5/zero
Resource management
Lookup and STL containers:
Performance of STL
Container selection
Using domain knowledge
Data structures
Strings:
Different approaches
Multi-threading concurrency:
Dos and dontís of multithreading