Intel Compilers for C++ and Fortran, Version 9.1; Copyright © 2006 Intel Corporation. All Rights Reserved.
Invoke the Intel C compiler for EM64T based applications
Invoke the Intel C++ compiler for EM64T based applications
Invoke the Intel Fortran compiler for EM64T based applications
Invoke the Intel C compiler for EM64T based applications
Invoke the Intel C++ compiler for EM64T based applications
Invoke the Intel Fortran compiler for EM64T based applications
This option is used to indicate that the host system's integers are 32-bits wide, and longs and pointers are 64-bits wide. Not all benchmarks recognize this macro, but the preferred practice for data model selection applies the flags to all benchmarks; this flag description is a placeholder for those benchmarks that do not recognize this macro.
This option is used to indicate that the host system's integers are 32-bits wide, and longs and pointers are 64-bits wide. Not all benchmarks recognize this macro, but the preferred practice for data model selection applies the flags to all benchmarks; this flag description is a placeholder for those benchmarks that do not recognize this macro.
This option is used to indicate that the host system's integers are 32-bits wide, and longs and pointers are 64-bits wide. Not all benchmarks recognize this macro, but the preferred practice for data model selection applies the flags to all benchmarks; this flag description is a placeholder for those benchmarks that do not recognize this macro.
This option is used to indicate that the host system's integers are 32-bits wide, and longs and pointers are 64-bits wide. Not all benchmarks recognize this macro, but the preferred practice for data model selection applies the flags to all benchmarks; this flag description is a placeholder for those benchmarks that do not recognize this macro.
This option is used to indicate that the host system's integers are 32-bits wide, and longs and pointers are 64-bits wide. Not all benchmarks recognize this macro, but the preferred practice for data model selection applies the flags to all benchmarks; this flag description is a placeholder for those benchmarks that do not recognize this macro.
For mixed-language benchmarks, tell the compiler to ignore the main routine in Fortran
This option is used to indicate that the host system's integers are 32-bits wide, and longs and pointers are 64-bits wide. Not all benchmarks recognize this macro, but the preferred practice for data model selection applies the flags to all benchmarks; this flag description is a placeholder for those benchmarks that do not recognize this macro.
For mixed-language benchmarks, tell the compiler to ignore the main routine in Fortran
This option is used to indicate that the host system's integers are 32-bits wide, and longs and pointers are 64-bits wide. Not all benchmarks recognize this macro, but the preferred practice for data model selection applies the flags to all benchmarks; this flag description is a placeholder for those benchmarks that do not recognize this macro.
This option is used to indicate that the host system's integers are 32-bits wide, and longs and pointers are 64-bits wide. Not all benchmarks recognize this macro, but the preferred practice for data model selection applies the flags to all benchmarks; this flag description is a placeholder for those benchmarks that do not recognize this macro.
This option is used to indicate that the host system's integers are 32-bits wide, and longs and pointers are 64-bits wide. Not all benchmarks recognize this macro, but the preferred practice for data model selection applies the flags to all benchmarks; this flag description is a placeholder for those benchmarks that do not recognize this macro.
This option is used to indicate that the host system's integers are 32-bits wide, and longs and pointers are 64-bits wide. Not all benchmarks recognize this macro, but the preferred practice for data model selection applies the flags to all benchmarks; this flag description is a placeholder for those benchmarks that do not recognize this macro.
This option is used to indicate that the host system's integers are 32-bits wide, and longs and pointers are 64-bits wide. Not all benchmarks recognize this macro, but the preferred practice for data model selection applies the flags to all benchmarks; this flag description is a placeholder for those benchmarks that do not recognize this macro.
This option is used to indicate that the host system's integers are 32-bits wide, and longs and pointers are 64-bits wide. Not all benchmarks recognize this macro, but the preferred practice for data model selection applies the flags to all benchmarks; this flag description is a placeholder for those benchmarks that do not recognize this macro.
For mixed-language benchmarks, tell the compiler to ignore the main routine in Fortran
This option is used to indicate that the host system's integers are 32-bits wide, and longs and pointers are 64-bits wide. Not all benchmarks recognize this macro, but the preferred practice for data model selection applies the flags to all benchmarks; this flag description is a placeholder for those benchmarks that do not recognize this macro.
This option is used to indicate that the host system's integers are 32-bits wide, and longs and pointers are 64-bits wide. Not all benchmarks recognize this macro, but the preferred practice for data model selection applies the flags to all benchmarks; this flag description is a placeholder for those benchmarks that do not recognize this macro.
This option is used to indicate that the host system's integers are 32-bits wide, and longs and pointers are 64-bits wide. Not all benchmarks recognize this macro, but the preferred practice for data model selection applies the flags to all benchmarks; this flag description is a placeholder for those benchmarks that do not recognize this macro.
This option is used to indicate that the host system's integers are 32-bits wide, and longs and pointers are 64-bits wide. Not all benchmarks recognize this macro, but the preferred practice for data model selection applies the flags to all benchmarks; this flag description is a placeholder for those benchmarks that do not recognize this macro.
This macro indicates that Fortran functions called from C should have their names lower-cased.
This macro indicates that the benchmark is being compiled on a Linux system.
This option is used to indicate that the host system's integers are 32-bits wide, and longs and pointers are 64-bits wide. Not all benchmarks recognize this macro, but the preferred practice for data model selection applies the flags to all benchmarks; this flag description is a placeholder for those benchmarks that do not recognize this macro.
This option is used to indicate that the host system's integers are 32-bits wide, and longs and pointers are 64-bits wide. Not all benchmarks recognize this macro, but the preferred practice for data model selection applies the flags to all benchmarks; this flag description is a placeholder for those benchmarks that do not recognize this macro.
This option is used to indicate that the host system's integers are 32-bits wide, and longs and pointers are 64-bits wide. Not all benchmarks recognize this macro, but the preferred practice for data model selection applies the flags to all benchmarks; this flag description is a placeholder for those benchmarks that do not recognize this macro.
This option is used to indicate that the host system's integers are 32-bits wide, and longs and pointers are 64-bits wide. Not all benchmarks recognize this macro, but the preferred practice for data model selection applies the flags to all benchmarks; this flag description is a placeholder for those benchmarks that do not recognize this macro.
This option is used to indicate that the host system's integers are 32-bits wide, and longs and pointers are 64-bits wide. Not all benchmarks recognize this macro, but the preferred practice for data model selection applies the flags to all benchmarks; this flag description is a placeholder for those benchmarks that do not recognize this macro.
This option is used to indicate that the host system's integers are 32-bits wide, and longs and pointers are 64-bits wide. Not all benchmarks recognize this macro, but the preferred practice for data model selection applies the flags to all benchmarks; this flag description is a placeholder for those benchmarks that do not recognize this macro.
For mixed-language benchmarks, tell the compiler to ignore the main routine in Fortran
This option is used to indicate that the host system's integers are 32-bits wide, and longs and pointers are 64-bits wide. Not all benchmarks recognize this macro, but the preferred practice for data model selection applies the flags to all benchmarks; this flag description is a placeholder for those benchmarks that do not recognize this macro.
For mixed-language benchmarks, tell the compiler to ignore the main routine in Fortran
This option is used to indicate that the host system's integers are 32-bits wide, and longs and pointers are 64-bits wide. Not all benchmarks recognize this macro, but the preferred practice for data model selection applies the flags to all benchmarks; this flag description is a placeholder for those benchmarks that do not recognize this macro.
This option is used to indicate that the host system's integers are 32-bits wide, and longs and pointers are 64-bits wide. Not all benchmarks recognize this macro, but the preferred practice for data model selection applies the flags to all benchmarks; this flag description is a placeholder for those benchmarks that do not recognize this macro.
This option is used to indicate that the host system's integers are 32-bits wide, and longs and pointers are 64-bits wide. Not all benchmarks recognize this macro, but the preferred practice for data model selection applies the flags to all benchmarks; this flag description is a placeholder for those benchmarks that do not recognize this macro.
This option is used to indicate that the host system's integers are 32-bits wide, and longs and pointers are 64-bits wide. Not all benchmarks recognize this macro, but the preferred practice for data model selection applies the flags to all benchmarks; this flag description is a placeholder for those benchmarks that do not recognize this macro.
This option is used to indicate that the host system's integers are 32-bits wide, and longs and pointers are 64-bits wide. Not all benchmarks recognize this macro, but the preferred practice for data model selection applies the flags to all benchmarks; this flag description is a placeholder for those benchmarks that do not recognize this macro.
This option is used to indicate that the host system's integers are 32-bits wide, and longs and pointers are 64-bits wide. Not all benchmarks recognize this macro, but the preferred practice for data model selection applies the flags to all benchmarks; this flag description is a placeholder for those benchmarks that do not recognize this macro.
For mixed-language benchmarks, tell the compiler to ignore the main routine in Fortran
This option is used to indicate that the host system's integers are 32-bits wide, and longs and pointers are 64-bits wide. Not all benchmarks recognize this macro, but the preferred practice for data model selection applies the flags to all benchmarks; this flag description is a placeholder for those benchmarks that do not recognize this macro.
This option is used to indicate that the host system's integers are 32-bits wide, and longs and pointers are 64-bits wide. Not all benchmarks recognize this macro, but the preferred practice for data model selection applies the flags to all benchmarks; this flag description is a placeholder for those benchmarks that do not recognize this macro.
This option is used to indicate that the host system's integers are 32-bits wide, and longs and pointers are 64-bits wide. Not all benchmarks recognize this macro, but the preferred practice for data model selection applies the flags to all benchmarks; this flag description is a placeholder for those benchmarks that do not recognize this macro.
This option is used to indicate that the host system's integers are 32-bits wide, and longs and pointers are 64-bits wide. Not all benchmarks recognize this macro, but the preferred practice for data model selection applies the flags to all benchmarks; this flag description is a placeholder for those benchmarks that do not recognize this macro.
This macro indicates that Fortran functions called from C should have their names lower-cased.
This macro indicates that the benchmark is being compiled on a Linux system.
This option is used to indicate that the host system's integers are 32-bits wide, and longs and pointers are 64-bits wide. Not all benchmarks recognize this macro, but the preferred practice for data model selection applies the flags to all benchmarks; this flag description is a placeholder for those benchmarks that do not recognize this macro.
The -fast option enhances execution speed across the entire program by including the following options that can improve run-time performance:
-O3 (maximum speed and high-level optimizations)
-ipo (enables interprocedural optimizations across files)
-xP (generate code specialized for Intel Pentium 4 processor and compatible Intel processors with Streaming SIMD Extensions 3)
-no-prec-div (disable -prec-div) where -prec-div improves precision of FP divides (some speed impact)
-static (statically link libraries during compilation)
To override one of the options set by /fast, specify that option after the -fast option on the command line. The options set by /fast may change from release to release.
The -fast option enhances execution speed across the entire program by including the following options that can improve run-time performance:
-O3 (maximum speed and high-level optimizations)
-ipo (enables interprocedural optimizations across files)
-xP (generate code specialized for Intel Pentium 4 processor and compatible Intel processors with Streaming SIMD Extensions 3)
-no-prec-div (disable -prec-div) where -prec-div improves precision of FP divides (some speed impact)
-static (statically link libraries during compilation)
To override one of the options set by /fast, specify that option after the -fast option on the command line. The options set by /fast may change from release to release.
The -fast option enhances execution speed across the entire program by including the following options that can improve run-time performance:
-O3 (maximum speed and high-level optimizations)
-ipo (enables interprocedural optimizations across files)
-xP (generate code specialized for Intel Pentium 4 processor and compatible Intel processors with Streaming SIMD Extensions 3)
-no-prec-div (disable -prec-div) where -prec-div improves precision of FP divides (some speed impact)
-static (statically link libraries during compilation)
To override one of the options set by /fast, specify that option after the -fast option on the command line. The options set by /fast may change from release to release.
The -fast option enhances execution speed across the entire program by including the following options that can improve run-time performance:
-O3 (maximum speed and high-level optimizations)
-ipo (enables interprocedural optimizations across files)
-xP (generate code specialized for Intel Pentium 4 processor and compatible Intel processors with Streaming SIMD Extensions 3)
-no-prec-div (disable -prec-div) where -prec-div improves precision of FP divides (some speed impact)
-static (statically link libraries during compilation)
To override one of the options set by /fast, specify that option after the -fast option on the command line. The options set by /fast may change from release to release.
Instrument program for profiling for the first phase of two-phase profile guided otimization. This instrumentation gathers information about a program's execution paths and data values but does not gather information from hardware performance counters. The profile instrumentation also gathers data for optimizations which are unique to profile-feedback optimization.
Instructs the compiler to produce a profile-optimized
executable and merges available dynamic information (.dyn)
files into a pgopti.dpi file. If you perform multiple
executions of the instrumented program, -prof_use merges
the dynamic information files again and overwrites the
previous pgopti.dpi file.
Without any other options, the current directory is
searched for .dyn files
The -fast option enhances execution speed across the entire program by including the following options that can improve run-time performance:
-O3 (maximum speed and high-level optimizations)
-ipo (enables interprocedural optimizations across files)
-xP (generate code specialized for Intel Pentium 4 processor and compatible Intel processors with Streaming SIMD Extensions 3)
-no-prec-div (disable -prec-div) where -prec-div improves precision of FP divides (some speed impact)
-static (statically link libraries during compilation)
To override one of the options set by /fast, specify that option after the -fast option on the command line. The options set by /fast may change from release to release.
This option instructs the compiler to analyze the program to
determine if there are 64-bit pointers which can be safely
shrunk into 32-bit pointers. In order for this option to be
effective the compiler must be able to optimize using the
-ipo option, and must be able to analyze all library/external
calls the program makes. This option imposes the following
restrictions on the program:
The program cannot malloc any objects greater than 2**31 bytes
in size.
If the program does not satisfy this restriction, unpredictable
behavior may occur.
Instrument program for profiling for the first phase of two-phase profile guided otimization. This instrumentation gathers information about a program's execution paths and data values but does not gather information from hardware performance counters. The profile instrumentation also gathers data for optimizations which are unique to profile-feedback optimization.
Instructs the compiler to produce a profile-optimized
executable and merges available dynamic information (.dyn)
files into a pgopti.dpi file. If you perform multiple
executions of the instrumented program, -prof_use merges
the dynamic information files again and overwrites the
previous pgopti.dpi file.
Without any other options, the current directory is
searched for .dyn files
The -fast option enhances execution speed across the entire program by including the following options that can improve run-time performance:
-O3 (maximum speed and high-level optimizations)
-ipo (enables interprocedural optimizations across files)
-xP (generate code specialized for Intel Pentium 4 processor and compatible Intel processors with Streaming SIMD Extensions 3)
-no-prec-div (disable -prec-div) where -prec-div improves precision of FP divides (some speed impact)
-static (statically link libraries during compilation)
To override one of the options set by /fast, specify that option after the -fast option on the command line. The options set by /fast may change from release to release.
This option instructs the compiler to analyze the program to
determine if there are 64-bit pointers which can be safely
shrunk into 32-bit pointers. In order for this option to be
effective the compiler must be able to optimize using the
-ipo option, and must be able to analyze all library/external
calls the program makes. This option imposes the following
restrictions on the program:
The program cannot malloc any objects greater than 2**31 bytes
in size.
If the program does not satisfy this restriction, unpredictable
behavior may occur.
Instrument program for profiling for the first phase of two-phase profile guided otimization. This instrumentation gathers information about a program's execution paths and data values but does not gather information from hardware performance counters. The profile instrumentation also gathers data for optimizations which are unique to profile-feedback optimization.
Instructs the compiler to produce a profile-optimized
executable and merges available dynamic information (.dyn)
files into a pgopti.dpi file. If you perform multiple
executions of the instrumented program, -prof_use merges
the dynamic information files again and overwrites the
previous pgopti.dpi file.
Without any other options, the current directory is
searched for .dyn files
The -fast option enhances execution speed across the entire program by including the following options that can improve run-time performance:
-O3 (maximum speed and high-level optimizations)
-ipo (enables interprocedural optimizations across files)
-xP (generate code specialized for Intel Pentium 4 processor and compatible Intel processors with Streaming SIMD Extensions 3)
-no-prec-div (disable -prec-div) where -prec-div improves precision of FP divides (some speed impact)
-static (statically link libraries during compilation)
To override one of the options set by /fast, specify that option after the -fast option on the command line. The options set by /fast may change from release to release.
Instrument program for profiling for the first phase of two-phase profile guided otimization. This instrumentation gathers information about a program's execution paths and data values but does not gather information from hardware performance counters. The profile instrumentation also gathers data for optimizations which are unique to profile-feedback optimization.
Instructs the compiler to produce a profile-optimized
executable and merges available dynamic information (.dyn)
files into a pgopti.dpi file. If you perform multiple
executions of the instrumented program, -prof_use merges
the dynamic information files again and overwrites the
previous pgopti.dpi file.
Without any other options, the current directory is
searched for .dyn files
The -fast option enhances execution speed across the entire program by including the following options that can improve run-time performance:
-O3 (maximum speed and high-level optimizations)
-ipo (enables interprocedural optimizations across files)
-xP (generate code specialized for Intel Pentium 4 processor and compatible Intel processors with Streaming SIMD Extensions 3)
-no-prec-div (disable -prec-div) where -prec-div improves precision of FP divides (some speed impact)
-static (statically link libraries during compilation)
To override one of the options set by /fast, specify that option after the -fast option on the command line. The options set by /fast may change from release to release.
This option instructs the compiler to analyze the program to
determine if there are 64-bit pointers which can be safely
shrunk into 32-bit pointers. In order for this option to be
effective the compiler must be able to optimize using the
-ipo option, and must be able to analyze all library/external
calls the program makes. This option imposes the following
restrictions on the program:
The program cannot malloc any objects greater than 2**31 bytes
in size.
If the program does not satisfy this restriction, unpredictable
behavior may occur.
This section contains descriptions of flags that were included implicitly by other flags, but which do not have a permanent home at SPEC.
Builds on -01 and -02 optimizations by enabling high-level optimization. This level does not guarantee higher performance unless loop and memory access transformation take place. In conjunction with -axK/-xK and -axW/-xW, this switch causes the compiler to perform more aggressive data dependency analysis than for -O2. This may result in longer compilation times. On Linux platforms, -O3 sets the following:
-fp
Disable using EBP as general purpose register.
This is the default level of optimization. Optimizes for speed. The -O2 option includes O1 optimizations and in addition enables inlining of intrinsics and more speed optimizations.
optimize for speed, but disable some optimizations which increase code size for a small speed benefit. Includes inline expansion except for intrinsic functions, global optimizations, string pooling optimizations. On Linux platforms, -O1 sets the following:
-unroll0, -fno-builtin -mno-ieee-fp -fomit-frame-pointer -ffunction-sections
Tells the compiler the maximum number of times to unroll loops.
Disables inline expansion of all intrinsic functions.
Enables improved floating-point consistency. Floating-point operations are not reordered and the result of each floating-point operation is stored in the target variable rather than being kept in the floating- point processor for use in a subsequent calculation. This is the same as specifying -fltconsistency or -mp.
The default, -mno-ieee-fp, provides better accuracy and run-time per- formance at the expense of less consistent floating-point results.
Enable using EBP as general purpose register.
Separate functions for the linker (COMDAT). Same as -fdata-sections.
Multi-file ip optimizations that includes:
- inline function expansion
- interprocedural constant propogation
- dead code elimination
- propagation of function characteristics
- passing arguments in registers
- loop-invariant code motion
The -xN and -xP options target your program to run on Intel Pentium 4 and compatible Intel processors. The resulting code might contain unconditional use of features that are not supported on other processors. Programs, where the function main() is compiled with this option, will detect non compatible processors and generate an error message during execution. This option also enables new optimizations in addition to Intel processor specific optimizations.
These options also enable advanced data layout and code restructuring optimizations to improve memory accesses for Intel processors.
This option prevents linking with shared libraries. It causes the executable to link all libraries statically.
Allows the compiler to perform optimizations in FP divides that may impact precision while improving speed.
Platform settings
One or more of the following settings may have been set. If so, the "Platform Notes" section of the report will say so; and you can read below to find out more about what these settings mean.
submit= MYMASK=`printf '0x%x' \$((1<<\$SPECCOPYNUM))`; /usr/bin/taskset \$MYMASK $command
When running multiple copies of benchmarks, the SPEC config file feature submit is sometimes used to cause individual jobs to be bound to specific processors. This specific submit command is used for Linux. The description of the elements of the command are:
ulimit -s
Sets the stack size to n kbytes, or unlimited to allow the stack size to grow without limit.
Flag description origin markings:
For questions about the meanings of these flags, please contact the tester.
For other inquiries, please contact webmaster@spec.org
Copyright 2006-2014 Standard Performance Evaluation Corporation
Tested with SPEC CPU2006 v1.0.
Report generated on Tue Jul 22 11:40:01 2014 by SPEC CPU2006 flags formatter v6906.