#pragma ibm iterations

Category

Optimization and tuning

Purpose

The iterations pragma specifies the approximate average number of loop iterations for the chosen loop.

Syntax

Read syntax diagramSkip visual syntax diagram
>>-#--pragma--ibm iterations--(iteration_count)----------------><

Parameters

iteration_count
Specifies the approximate number of loop iterations using a positive integral constant expression.

Usage

The compiler uses the information in iteration_count for loop optimization. You can specify multiple #pragma ibm iterations(iteration_count).

iteration_count specified in #pragma ibm iterations cannot be smaller than iteration_count specified in #pragma ibm min_iterations. In addition, it cannot be bigger than iteration_count specified in #pragma ibm max_iterations. Otherwise, the inconsistent value is ignored with a message.

Example

#pragma ibm     iterations(100)        // Accepted
#pragma ibm min_iterations(150)        // Ignored (150 > 100)
#pragma ibm min_iterations( 30)        // Accepted( 30 < 100)
#pragma ibm max_iterations( 60)        // Ignored ( 60 < 100)
#pragma ibm     iterations( 20)        // Ignored ( 20 < 30)
#pragma ibm max_iterations(500)        // Accepted(500 > 100 > 30)
#pragma ibm max_iterations(620)        // Ignored (Multiple occurrences)
#pragma ibm     iterations(200)        // Accepted( 30 < 200 < 500)
#pragma ibm min_iterations( 15)        // Ignored (Multiple occurrences)

   for (int i=0; i < n; ++i)
   {
     #pragma ibm max_iterations(130)   // Accepted
     #pragma ibm min_iterations( 90)   // Accepted( 90 < 130)
     #pragma ibm     iterations( 60)   // Ignored ( 60 <  90)
     #pragma ibm     iterations(100)   // Accepted( 90 < 100 < 130)

     for (int j=0; j < m; ++j) b[j] += a[i];
   }