Advanced Optimization Options
- alias-const, Qalias-const
Determines whether the compiler assumes a parameter of type pointer-to-const does not alias with a parameter of type pointer-to-non-const.
- ansi-alias, Qansi-alias
Enable use of ANSI aliasing rules in optimizations.
- ansi-alias-check, Qansi-alias-check
Enables or disables the ansi-alias checker.
- cilk-serialize, Qcilk-serialize
Causes serialization of Intel® Cilk™ Plus code.
- complex-limited-range, Qcomplex-limited-range
Determines whether the use of basic algebraic expansions of some arithmetic operations involving data of type COMPLEX is enabled.
- fargument-alias, Qalias-args
Determines whether function arguments can alias each other.
- fargument-noalias-global
Tells the compiler that function arguments cannot alias each other and cannot alias global storage.
- ffreestanding, Qfreestanding
Ensures that compilation takes place in a freestanding environment.
- fjump-tables
Determines whether jump tables are generated for switch statements.
- ftls-model
Changes the thread local storage (TLS) model.
- funroll-all-loops
Unroll all loops even if the number of iterations is uncertain when the loop is entered.
- guide, Qguide
Lets you set a level of guidance for auto-vectorization, auto parallelism, and data transformation.
- guide-data-trans, Qguide-data-trans
Lets you set a level of guidance for data transformation.
- guide-file, Qguide-file
Causes the results of guided auto parallelism to be output to a file.
- guide-file-append, Qguide-file-append
Causes the results of guided auto parallelism to be appended to a file.
- guide-opts, Qguide-opts
Tells the compiler to analyze certain code and generate recommendations that may improve optimizations.
- guide-par, Qguide-par
Lets you set a level of guidance for auto parallelism.
- guide-profile, Qguide-profile
Specifies a loop profiler data file (or a set of files) when used with option -guide or /Qguide.
- guide-vec, Qguide-vec
Lets you set a level of guidance for auto-vectorization.
- ipp, Qipp
Tells the compiler to link to the some or all of the Intel® Integrated Performance Primitives (Intel® IPP) libraries.
- mkl, Qmkl
Tells the compiler to link to certain parts of the Intel® Math Kernel Library (Intel® MKL).
- opt-args-in-regs, Qopt-args-in-regs
Determines whether calls to routines are optimized by passing parameters in registers instead of on the stack.
- opt-block-factor, Qopt-block-factor
Lets you specify a loop blocking factor.
- opt-calloc
Tells the compiler to substitute a call to _intel_fast_calloc() for a call to calloc().
- opt-class-analysis, Qopt-class-analysis
Determines whether C++ class hierarchy information is used to analyze and resolve C++ virtual function calls at compile time.
- opt-jump-tables, Qopt-jump-tables
Enables or disables generation of jump tables for switch statements.
- opt-malloc-options
Lets you specify an alternate algorithm for malloc().
- opt-matmul, Qopt-matmul
Enables or disables a compiler-generated Matrix Multiply (matmul) library call.
- opt-mem-layout-trans, Qopt-mem-layout-trans
Controls the level of memory layout transformations performed by the compiler.
- opt-multi-version-aggressive, Qopt-multi-version-aggressive
Tells the compiler to use aggressive multi-versioning to check for pointer aliasing and scalar replacement.
- opt-prefetch, Qopt-prefetch
Enables or disables prefetch insertion optimization.
- opt-ra-region-strategy, Qopt-ra-region-strategy
Selects the method that the register allocator uses to partition each routine into regions.
- opt-streaming-stores, Qopt-streaming-stores
Enables generation of streaming stores for optimization.
- opt-subscript-in-range, Qopt-subscript-in-range
Determines whether the compiler assumes that there are no "large" integers being used or being computed inside loops.
- Qvla
Determines whether variable length arrays are enabled.
- scalar-rep, Qscalar-rep
Enables scalar replacement performed during loop transformation.
- simd, Qsimd
Enables or disables the SIMD vectorization feature of the compiler.
- tbb, Qtbb
Tells the compiler to link to the Intel® Threading Building Blocks (Intel® TBB) libraries.
- unroll, Qunroll
Tells the compiler the maximum number of times to unroll loops.
- unroll-aggressive, Qunroll-aggressive
Determines whether the compiler uses more aggressive unrolling for certain loops.
- use-intel-optimized-headers, Quse-intel-optimized-headers
Determines whether the performance headers directory is added to the include path search list.
- vec, Qvec
Enables or disables vectorization.
- vec-guard-write, Qvec-guard-write
Tells the compiler to perform a conditional check in a vectorized loop.
- vec-threshold, Qvec-threshold
Sets a threshold for the vectorization of loops.