Intel-Specific Pragmas

The Intel-specific C++ compiler pragmas described in the Intel-Specific Pragma reference are listed below. Click on the pragmas for a more detailed description.

Pragma

Description

alloc_section

allocates variable in specified section

distribute_point

instructs the compiler to prefer loop distribution at the location indicated

intel_omp_task

specifies a unit of work, potentially executed by a different thread

intel_omp_taskq

specifies a unit of work, potentially executed by a different thread

ivdep

instructs the compiler to ignore assumed vector dependencies

loop_count

indicates the loop count is likely to be an integer

memref_control

provides a method for controlling load latency at the variable level

novector

specifies that the loop should never be vectorized

optimize

enables or disables optimizations for specific functions; provides some degree of compatibility with Microsoft's implementation of optimize pragma

optimization_level

enables control of optimization for a specific function

parallel/noparallel

facilitates auto-parallelization of an immediately following DO loop; using keyword [always] forces the compiler to auto-parallelize; noparallel pragma prevents auto-parallelization

prefetch/noprefetch

asserts that the data prefetches are generated or not generated for some memory references

swp/noswp

swp indicates preference for loops to be software pipelined; noswp indicates the loops not to be software pipelined

unroll/nounroll

instructs the compiler the number of times to unroll/not to unroll a loop

unroll_and_jam/nounroll_and_jam

instructs the compiler to partially unroll higher loops and jam the resulting loops back together. Specifying the nounroll_and_jam pragma prevents unrolling and jamming of loops.

unused

describes variables that are unused (warnings not generated)

vector

indicates to the compiler that the loop should be vectorized according to the arguments: always/aligned/unaligned/nontemporal/temporal