Compilers: Intel Compilers for C++ and Fortran, Version 10.0
for IA32/EM64T-based applications in Linux_x64
Operating system: 64-bit SUSE Linux 10 Enterprise Edition
Last updated: 01-June-2007 by Paul Sawatzki
The text for many of the descriptions below was taken from the documentation of the Intel Compilers.
This documentation is copyright © 2006 Intel Corporation. All Rights Reserved.
The original documentation is distributed with the Intel compilers.
Selecting one of the following will take you directly to that section:
The -fast option enhances execution speed across the entire program by including the following options that can improve run-time performance:
To override one of the options set by /fast, specify that option after the -fast option on the command line. The exception is the -xT option which can't be overridden. The options set by /fast may change from release to release.
Enables O2 optimizations plus more aggressive optimizations, such as prefetching, scalar replacement, and loop and memory access transformations. Enables optimizations for maximum speed, such as:
Enables optimizations for speed. This is the generally recommended optimization level. This option also enables:
Enables optimizations for speed and disables some optimizations that increase code size and affect speed.
To limit code size, this option:
Multi-file ip optimizations that includes:
Code is optimized for Intel(R) Core(TM)2 Duo processors, Intel(R) Core(TM)2 Quad processors and Intel(R) Xeon(R) processors with SSSE3. The resulting code may contain unconditional use of features that are not supported on other processors. This option also enables new optimizations in addition to Intel processor-specific optimizations including advanced data layout and code restructuring optimizations to improve memory accesses for Intel processors.
Do not use this option if you are executing a program on a processor that is not an Intel processor. If you use this option on a non-compatible processor to compile the main program (in Fortran) or the function main() in C/C++, the program will display a fatal run-time error if they are executed on unsupported processors.
-Qprec-dev improves precision of floating-point divides. It has a slight impact on speed. -Qprec-dev- disables this option and enables optimizations that give slightly less precise results than full IEEE division.
When you specify -Qprec-dev- along with some optimizations, such as -xN and -xB (Linux) or /QxN and /QxB (Windows), the compiler may change floating-point division computations into multiplication by the reciprocal of the denominator. For example, A/B is computed as A * (1/B) to improve the speed of the computation.
However, sometimes the value produced by this transformation is not as accurate as full IEEE division. When it is important to have fully precise IEEE division, do not use -Qprec-dev- which will enable the default -Qprec-dev and the result is more accurate, with some loss of performance.
-static prevents linking with shared libraries.
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.
Link with SmartHeap Library.
Available from: http://www.microquill.com
Enable/disable(DEFAULT) use of ANSI aliasing rules in optimizations; user asserts that the program adheres to these rules.
Tells the compiler the maximum number of times to unroll loops.
Enable/disable(DEFAULT) the compiler to generate prefetch instructions to prefetch data.
Specifies whether streaming stores are generated:
/opt/intel/cc/10.0.023/bin/icc invokes the 32-bit Intel C compiler.
Also used to invoke linker for 32-bit C programs.
/opt/intel/cc/10.0.023/bin/icpc invokes the 32-bit Intel C++ compiler.
Also used to invoke linker for 32-bit C++ programs.
/opt/intel/cce/10.0.023/bin/icc invokes the 64-bit Intel C compiler.
Also used to invoke linker for 64-bit C programs.
/opt/intel/cce/9.1.049/bin/icc invokes the 64-bit Intel C compiler.
Also used to invoke linker for 64-bit C programs.
Invoke the Intel C compiler.
Also used to invoke linker for C programs.
Invoke the Intel C++ compiler.
Also used to invoke linker for C++ programs.
-I/opt/intel/cc/10.0.023/include is the include path of 32-bit Intel C/C++ compiler
-I/opt/intel/cce/10.0.023/include is the include path of 64-bit Intel C/C++ compiler
-I/opt/intel/cce/9.1.049/include is the include path of 64-bit Intel C/C++ compiler
-L/opt/intel/cc/10.0.023/lib is the library path of 32-bit Intel C/C++ compiler
-L/opt/intel/cce/10.0.023/lib is the library path of 64-bit Intel C/C++ compiler
-L/opt/intel/cce/9.1.049/lib is the library path of 64-bit Intel C/C++ compiler
Platform settings
One or more of the following settings may have been set. If so, the "General Notes" section of the report will say so; and you can read below to find out more about what these settings mean.
Hardware Prefetch:
This BIOS option allows the enabling/disabling of a processor mechanism to prefetch data into the cache according to a pattern-recognition algorithm.
In some cases, setting this option to Disabled may improve performance. Users should only disable this option after performing application benchmarking to verify improved performance in their environment.
Adjacent Sector Prefetch:
This BIOS option allows the enabling/disabling of a processor mechanism to fetch the adjacent cache line within an 128-byte sector that contains the data needed due to a cache line miss.
In some cases, setting this option to Disabled may improve performance. Users should only disable this option after performing application benchmarking to verify improved performance in their environment.
-I
Compiler option to set the path for include files.
Used in some integer peak benchmarks which were built using the Intel 64-bit compiler.
Used in some floating point peak benchmarks which were built using the Intel 32-bit compiler.
-L
Compiler option to set the path for library files.
Used in some integer peak benchmarks which were built using the Intel 64-bit compiler.
Used in some floating point peak benchmarks which were built using the Intel 32-bit compiler.
ulimit -s
Sets the stack size to n kbytes, or unlimited to allow the stack size to grow without limit.
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: