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
Enables or disables the use of ANSI aliasing rules in optimizations.
- ansi-alias-check, Qansi-alias-check
Enables or disables the ansi-alias checker.
- 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.
- daal, Qdaal
Tells the compiler to link to certain libraries in the Intel® oneAPI Data Analytics Library (oneDAL).
- 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-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.
- ipp-link, Qipp-link
Controls whether the compiler links to static or dynamic threaded Intel® Integrated Performance Primitives (Intel® IPP) run-time libraries.
- qmkl, Qmkl
Tells the compiler to link to certain libraries in the Intel® oneAPI Math Kernel Library (oneMKL). On Windows systems, you must specify this option at compile time.
- qopt-args-in-regs, Qopt-args-in-regs
Determines whether calls to routines are optimized by passing parameters in registers instead of on the stack.
- qopt-assume-safe-padding, Qopt-assume-safe-padding
Determines whether the compiler assumes that variables and dynamically allocated memory are padded past the end of the object.
- qopt-block-factor, Qopt-block-factor
Lets you specify a loop blocking factor.
- qopt-calloc
Tells the compiler to substitute a call to _intel_fast_calloc() for a call to calloc().
- qopt-class-analysis, Qopt-class-analysis
Determines whether C++ class hierarchy information is used to analyze and resolve C++ virtual function calls at compile time.
- qopt-dynamic-align, Qopt-dynamic-align
Enables or disables dynamic data alignment optimizations.
- qopt-jump-tables, Qopt-jump-tables
Enables or disables generation of jump tables for switch statements.
- qopt-malloc-options
Lets you specify an alternate algorithm for malloc().
- qopt-matmul, Qopt-matmul
Enables or disables a compiler-generated Matrix Multiply (matmul) library call.
- qopt-mem-layout-trans, Qopt-mem-layout-trans
Controls the level of memory layout transformations performed by the compiler.
- qopt-multi-version-aggressive, Qopt-multi-version-aggressive
Tells the compiler to use aggressive multi-versioning to check for pointer aliasing and scalar replacement.
- qopt-multiple-gather-scatter-by-shuffles, Qopt-multiple-gather-scatter-by-shuffles
Enables or disables the optimization for multiple adjacent gather/scatter type vector memory references.
- qopt-prefetch, Qopt-prefetch
Enables or disables prefetch insertion optimization.
- qopt-prefetch-distance, Qopt-prefetch-distance
Specifies the prefetch distance to be used for compiler-generated prefetches inside loops.
- qopt-prefetch-issue-excl-hint, Qopt-prefetch-issue-excl-hint
Supports the prefetchW instruction in Intel® microarchitecture code name Broadwell and later.
- qopt-ra-region-strategy, Qopt-ra-region-strategy
Selects the method that the register allocator uses to partition each routine into regions.
- qopt-streaming-stores, Qopt-streaming-stores
Enables generation of streaming stores for optimization.
- qopt-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.
- qopt-zmm-usage, Qopt-zmm-usage
Defines a level of zmm registers usage.
- qoverride-limits, Qoverride-limits
Lets you override certain internal compiler limits that are intended to prevent excessive memory usage or compile times for very large, complex compilation units.
- Qvla
Determines whether variable length arrays are enabled.
- scalar-rep, Qscalar-rep
Enables or disables the scalar replacement optimization done by the compiler as part of loop transformations.
- simd, Qsimd
Enables or disables compiler interpretation of simd pragmas.
- simd-function-pointers, Qsimd-function-pointers
Enables or disables pointers to simd-enabled functions.
- tbb, Qtbb
Tells the compiler to link to the Intel® oneAPI Threading Building Blocks (oneTBB) libraries. Option -tbb is a deprecated option; the replacement option is -qtbb.
- 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.
- vecabi, Qvecabi
Determines which vector function application binary interface (ABI) the compiler uses to create or call vector functions.