##Contents
##Talks
- ACCU 2016 'Fastware' - Andrei Alexandrescu
- C++Now 2016 Timur Doumler: C++ Performance in Practice: Align, Vectorise, Cache, Jump! (slides)
- C++Now 2016 David Stone: Exceptional Performance
- C++Now 2016 Jason Turner: Practical Performance Practices
- code::dive conference 2014 Scott Meyers: Cpu Caches and Why You Care(slides)
- code::dive conference 2015 Andrei Alexandrescu - Writing Fast Code I (slides)
- code::dive conference 2015 Andrei Alexandrescu - Writing Fast Code II (slides)
- CppCon 2014 Andrei Alexandrescu "Optimization Tips - Mo' Hustle Mo' Problems"
- CppCon 2014 Mike Acton "Data-Oriented Design and C++"
- CppCon 2014 Chandler Carruth "Efficiency with Algorithms, Performance with Data Structures"
- CppCon 2015 Chandler Carruth, "Tuning C++: Benchmarks, and CPUs, and Compilers! Oh My!"
- CppCon 2015 Bryce Adelstein-Lelbach “Benchmarking C++ Code"
- Going Native 2013 - Andrei Alexandrescu, Writing Quick Code in C++, Quickly
- Meeting C++ 2015 Understanding Compiler Optimization - Chandler Carruth - Opening Keynote
##Articles
- Three Optimization Tips for C++, by Andrei Alexandrescu, @Facebook Engineering
- why GNU grep is fast
- Hash Functions all the way down from Aras-P, and the follow up here
- Why do CPUs have multiple cache levels?
- ETW Central - by RandomASCII
- Micro benchmarking libraries for C++ - on Bartek's blog
- How to start with Software Optimization, from Flexible Particle Experiments series, Bartek's blog.
- Taking advantage of cache coherence in your programs
- Gallery of Processor Cache Effects, C#
- How We Beat C++ STL Binary Search
- C++ benchmark – std::vector VS std::list VS std::deque
- Container Study
- Associative-Container Performance Tests
- C++ Core Guidelines, Performance section
- C++ Best Practices, Performance section
- That’s Not Normal–the Performance of Odd Floats
- gprof, Valgrind and gperftools – an evaluation of some tools for application level CPU profiling on Linux
##Sites/Blogs
- Agner`s CPU blog
- Agner's Software optimization resources
- The ryg blog
- Random ASCII
- The Every Computer Performance Blog
- The Supercomputing Blog
- Daniel Lemire's blog
- Bartek's programming blog
##Tools
###Free
- AMD Code XL
- Very Sleepy
- Proffy
- Windows Performance Toolkit - XPERF
- Performance and Diagnostic Tools in Visual Studio 2015
- Valgrind
- TAU Performance System
- Google Performance Tools (gperftools)
- Linux perf tools
###Paid
##Libraries
- Celero micro-benchmarking library
- Nonius library
- Hayai micro benchmarking library, into article
- Google benchmark library
##Books
- PDF: optimizing C++ - by Agner Fog. FREE
- Optimizing C++, WikiBooks - FREE
- The Software Optimization Cookbook: High Performance Recipes for IA-32 Platforms, 2nd Edition
- Video Game Optimization, Eric Preisz
- Optimized C++: Proven Techniques for Heightened Performance, Kurt Guntheroth
- Power and Performance: Software Analysis and Optimization, Jim Kukunas
- Systems Performance: Enterprise and the Cloud, Brendan Gregg
- Every Computer Performance Book, Bob Wescott
##About This list was started by Bartlomiej Filipek (@fenbf). If you like to help please read CONTRIBUTING.md instructions and just make a pull request to this repo.
##License
This work is licensed under a Creative Commons Attribution 4.0 International License.