Optimizing for Performance

The following table lists possible starting points for your optimization efforts.

If you are trying to...

Start with these topics or sections.

use performance analysis to begin the optimization process

Optimizing with Intel® Compilers

Using a Performance Enhancement Methodology

IntelŪ Performance Analysis Tools and Libraries

Performance Enhancement Strategies

optimize for speed or a specific architecture

Enabling Automatic Optimizations

Targeting IA-32 Architecture Processors Automatically

Targeting IA-32 Architecture Processors for Run-time Performance Checking

Targeting ItaniumŪ Processors Automatically

use Interprocedural Optimization

Using IPO

IPO for Large Programs

Interprocedural Optimization (IPO) Quick Reference

create application profiles to help optimization

Profile an Application

Profile-Guided Optimization (PGO) Quick Reference

profmerge and proforder Tools

PGO Tools Overview

PGO API and environment variables

generate reports on compiler optimizations

Generating Reports

Compiler Reports Quick Reference

create parallel programs or parallelize existing programs

Using Parallelism

Automatic Vectorization Overview

OpenMP* Support Overview

Auto-parallelization Overview

optimize loops, arrays, and data layout

High-level Optimization (HLO) Overview

Loop Unrolling

Loop Unrolling Support

use language intrinsics, pragmas and directives, or run-time libraries to enhance application performance