Timur Doumler: C++ Performance in Practice: Align, Vectorise, Cache, Jump!
Channel: CppNow
Date: 18/07/2016

This talk is the next installment in the series "C++ In the Audio Industry”. However, the talk presented here does not contain material specific to the audio industry and is intended for a general C++ audience interested in performance and low latency.

The first part of the series, presented at CppCon 2015, covered real-time programming and lock-free thread synchronisation. In this talk, I will instead focus on raw performance and how your hardware architecture can impact it, sometimes in surprising ways. I will discuss the following topics: memory alignment, SIMD and (auto-)vectorisation, cache-friendliness, and the impact of branch prediction. I will present the concepts, C++ code examples with performance benchmarks, and relevant modern C++11/14 techniques. I will also give an insight into the challenges of designing and implementing a generic, modern C++ framework dealing with those topics.

Slides here: https://github.com/boostcon/cppnow_presentations_2016/blob/master/03_friday/cpp_performance_in_practice_align_vectorise_cache_jump.pdf
---

*--*

---