This lesson describes the following two non-traditional optimization methods:

  • Interprocedural Optimization (IPO), which enables multifile inlining, constant propagation, code placement (i.e. function layout), and data placement.
  • Profile Guided Optmization (PGO), which provides dynamic program control flow information to the compiler. The compiler uses this information to make better decisions for many optimizations such as long/short trip count loops, inlining functions and more.

    After completing this lesson, you should be able to use IPO and PGO.