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

YouTube

An Overview of Program Optimization Techniques

ACCU Conference via YouTube

Overview

Explore an in-depth overview of program optimization techniques in this ACCU 2017 conference talk by Mathias Gaunard. Delve into the world of C++ efficiency as the speaker introduces various methods to map algorithms to computer architecture with minimal overhead. Begin by understanding the intricacies of hardware architecture, including NUMA, multi-core processing, superscalar execution, instruction pipelining, specialized processing units, caching behavior, and branch prediction. Then, discover practical programming techniques such as asynchronous programming, strength reduction, tiling, loop unrolling and pipelining, branch elimination, vectorization, mixed precision, and specialized algorithms. Learn how C++ templates can help generalize and combine these optimization strategies. Examine benchmarks to assess the effectiveness of these techniques in real-world scenarios. Cover topics like x86 optimization, assembly, port types, auto order execution, SIMD, multithreading, complex switches, caches, compact objects, padding, inlining, ABI cost, metaprogramming, explicit load, unrolling, loop optimization, and register rotation.

Syllabus

Introduction
What is optimization
X86 optimization
Assembly
Port Types
Auto Order Execution
Avoid Stalls
Not all instructions are equal
Relative instruction speed
SIMD
Multithreading
Complex Switches
Caches
Compact Objects
Padding
Branch prediction
Branch code
Static branch prediction
Inlining
ABI Cost
Specialized Optimization
Metaprogramming
Explicit Load
Unrolling
Overload
Advanced Optimization
Loop Optimization
Register Rotation

Taught by

ACCU Conference

Reviews

Start your review of An Overview of Program Optimization Techniques

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.