Code optimization options, Targeting a processor (-gn) – Intel ARCHITECTURE IA-32 User Manual

Page 437

Advertising
background image

Application Performance Tools

A

A-3

family. Vectorization, processor dispatch, inter-procedural optimization,
profile-guided optimization and OpenMP parallelism are all supported
by the Intel compilers and can significantly aid the performance of an
application.

The most general optimization options are

-O1

,

-02

and

-O3

. Each of

them enables a number of specific optimization options. In most cases,

-O2

is recommended over

-O1

because the

-O2

option enables function

expansion, which helps programs that have many calls to small
functions. The

-01

may sometimes be preferred when code size is a

concern. The

-O2

option is on by default.

The

-Od (-O0 on Linux)

option disables all optimizations. The

-03

option enables more aggressive loop optimizations, most of which are
effective only in conjunction with processor-specific optimizations
described below.

All the command-line options are described in the Intel® C++
Compiler User’s Guide
. Further advice on optimizing applications with
the Intel compiler can be found in “Optimizing Applications with the
Intel® C++ and Fortran Compilers for Windows* and Linux*

available at

http://www.intel.com/software/products/compilers

.

Code Optimization Options

This section describes specific options that may be used to optimize
your code and improve the performance of your application.

Targeting a Processor (-Gn)

Use

-Gn

to target an application to run on a specific processor for

maximum performance. Any of the

-Gn

suboptions you choose results

in your binary being optimized for corresponding Intel architecture
32-bit processors.

-G6 (-tpp6 on Linux)

targets optimization for the

Pentium II and Pentium III processors.

-G7 (-tpp7 on Linux) is the

Advertising