Optimizing C++

Optimizing C++
A book about improving program performance

Preface

Audience

This book is for intermediate C++ programmers (i.e. studying C++ for at least one year) who want to improve the performance of the software they develop.

Subject

This book contains guidelines and advices on how to write efficient software using the C++ language. Software correctness and maintainability are taken into account, but are not the primary concerns of the guidelines.

Most of the guidelines presented are not platform specific, and so are applicable to every processor, to every compiler, and to every operating system; the few platform specific advices try to cover most platforms.

Table of Contents

Category:Advanced reading level Category:Books with print version#Optimizing%20C++
  1. Introduction
  2. Optimization life cycle
  3. Writing efficient code
    1. Performance improving features
    2. Performance worsening features
    3. Constructions and destructions
    4. Allocations and deallocations
    5. Memory access
    6. Thread usage
  4. General optimization techniques
    1. Input/Output
    2. Memoization
    3. Sorting
    4. Other techniques
  5. Code optimization
    1. Allocations and deallocations
    2. Run-time support
    3. Instruction count
    4. Constructions and destructions
    5. Pipeline
    6. Memory access
    7. Faster operations
    8. Compile time optimization
  6. Tools
  7. Further reading

Guidelines for editors

Category:Book:Optimizing C++#%20 Category:Subject:C++ programming language#Optimizing%20C++ Category:Subject:C++ programming language/all books Category:Subject:Computer programming languages/all books Category:Subject:Computer programming/all books Category:Subject:Computer science/all books Category:Subject:Computing/all books Category:Subject:Books by subject/all books Category:Subject:Computing/all books Category:Subject:Books by subject/all books Category:Book:Optimizing C++#%20 Category:Book:Wikibooks Stacks/Books#Optimizing%20C++Category:Shelf:C++ programming language Category:Shelf:C++ programming language/all books Category:Shelf:Computer programming/all books#Computer%20programming Category:Shelf:Computer programming languages/all books#Computer%20programming%20languages Category:Shelf:Computer science/all books#Computer%20science Category:Department:Computing/all books#Computing Category:Alphabetical/O Category:Books nearing completionCategory:Books by completion status/all books
Category:Advanced reading level Category:Alphabetical/O Category:Book:Optimizing C++ Category:Book:Wikibooks Stacks/Books Category:Books by completion status/all books Category:Books nearing completion Category:Books with PDF version Category:Books with print version Category:Department:Computing/all books Category:Shelf:C++ programming language Category:Shelf:C++ programming language/all books Category:Shelf:Computer programming/all books Category:Shelf:Computer programming languages/all books Category:Shelf:Computer science/all books Category:Subject:Books by subject/all books Category:Subject:C++ programming language Category:Subject:C++ programming language/all books Category:Subject:Computer programming/all books Category:Subject:Computer programming languages/all books Category:Subject:Computer science/all books Category:Subject:Computing/all books