Class Central is learner-supported. When you buy through links on our site, we may earn an affiliate commission.

NDC Conferences

C++ Performance and Optimisation

NDC Conferences via YouTube

Overview

Explore a comprehensive guide to creating high-performance C++ applications, covering multiple levels of optimization. Learn about the crucial role of domain knowledge, selecting appropriate data structures and algorithms, efficient memory allocation, and leveraging modern machine architectures and caches. Discover the benefits of move semantics, various string handling techniques, and the importance of measurement in performance optimization. Delve into topics such as vectorization, rvalue references, STL memory allocations, hash function optimization, and binary search on sorted collections. Gain insights into data access patterns, working set sizes, and consistency considerations. This 44-minute conference talk by Hubert Matthews at NDC Conferences provides a wealth of knowledge for C++ developers seeking to enhance their application performance.

Syllabus

Intro
The performance story
Overview
Modern CPUs
Instructions are "free", memory b/w isn't
Cache hierarchy
Measurement - Big O notation
Data layout and performance
Vectorisation (2)
Move semantics and rvalue references
Move semantics example
Implementing move semantics
Memory allocations and STL
Optimisation - hash function
Binary search on a sorted collection
Domain knowledge
questions about data access
Non-primary key access
Range scans and sequential access
Read/write ratio
Working set size • How much of the common dan will fit in main
Consistency
Summary

Taught by

NDC Conferences

Reviews

Start your review of C++ Performance and Optimisation

Never Stop Learning.

Get personalized course recommendations, track subjects and courses with reminders, and more.

Someone learning on their laptop while sitting on the floor.