Controls the compiler code generation of vector instructions for individual loops.
Vector instructions can offer high performance when used with algorithmic-intensive tasks such as multimedia applications. You have the flexibility to control the aggressiveness of autosimdization on a loop-by-loop basis, and might be able to achieve further performance gain with this fine grain control.
The supported levels are from 0 to 10. level(0) indicates performing no autosimdization on the loop that follows the pragma directive. level(10) indicates performing the most aggressive form of autosimdization on the loop. With this pragma directive, you can control the autosimdization behavior on a loop-by-loop basis.
A loop with no simd_level pragma is set to simd level 5 by default, if -qsimd=auto is in effect.
#pragma simd_level(0) is equivalent to #pragma nosimd, where autosimdization is not performed on the loop that follows the pragma directive.
#pragma simd_level(10) instructs the compiler to perform autosimdization on the loop that follows the pragma directive most aggressively, including bypassing cost analysis.
...
#pragma simd_level(10)
for (i=1; i<1000; i++) {
/* program code */
} ...