Skip to main content
Have a personal or library account? Click to login
The Art of Writing Efficient Programs Cover

The Art of Writing Efficient Programs

Master high-performance C++ and modern concurrency by understanding how code runs on real hardware

Paid access
|Jan 2026
Product purchase options
This title is not yet available for download

Gain practical skills to optimize C++ programs using modern CPU architectures, memory models, and concurrency tools

Key Features

  • Apply advanced CPU, memory, and concurrency techniques to real-world code
  • Design efficient thread-safe data structures using lock-free and atomic strategies
  • Leverage compiler behavior and modern C++ standards for performance gains

Book Description

Hardware stopped making your programs faster for free a long time ago. What it does instead is reward code that understands it, code written with a clear picture of how the CPU executes instructions, how memory really moves through caches, and what the compiler can and cannot do on your behalf. This book teaches that understanding, from first principles to the most advanced techniques, and shows you how to turn it into measurably faster software. This edition is roughly half new and >60% longer. The coverage of CPU architecture (now including ARM), instruction processing, and the memory hierarchy, from caches to paging and virtual addressing, is expanded throughout. But the largest change is concurrency, which now makes up nearly half the book and is entirely rewritten: the memory model, atomic operations and atomic shared pointers, coroutine-based execution, NUMA-aware design, and a completely rewritten chapter on concurrent data structures that shows how cache coherency on modern hardware changes the established rules of lock-free programming, including advanced techniques such as helping. Written by Fedor G. Pikus, industry leader in high-performance C++, with a foreword by Herb Sutter, this book equips you with both conceptual clarity and the hands-on techniques needed to make your software faster, leaner, and smarter.

What you will learn

  • Analyze and optimize CPU resource usage
  • Improve memory access patterns across architectures
  • Design performant multithreaded and lock-free systems
  • Use atomic operations and smart pointers effectively
  • Apply memory order guarantees for correctness and speed
  • Evaluate compiler decisions and leverage vectorization
  • Implement coroutine-based execution models
  • Build APIs that scale in concurrent environments

Who this book is for

Experienced C++ developers, performance-focused programmers, and engineers working in high-speed systems like trading platforms, games, or scientific computing. Prior knowledge of multithreading and memory management is required to make the most of this book.

PDF ISBN: 978-1-83546-674-2
Publisher: Packt Publishing Limited
Copyright owner: © 2026 Packt Publishing Limited
Publication date: 2026
Language: English
Pages: 702
BISAC subjects:
COM051000
Thema subjects:
UM

People also read