Intel® Advisor Help

Window: Annotation Report, Inductive Expression Row

This special-purpose annotation marks a line that updates an expression that is inductive in a loop.

To view the source code for this annotation, click the icon.

Inductive expressions cause dependence cycles which normally prevent parallelizing a loop, but it is possible to compute the value of the expression if you know the iteration number. You may have to re-write the inductive expression to compute the value based on the iteration number when the loop is translated to parallel code.

For example, if i++ is the iteration variable of your loop, the parallel framework that you use may automatically fix this for you. For example, by using cilk_for. Otherwise, you may need to fix it manually. A common example is with j+=3, and i++. If i is your loop index (assuming 0 based), you can replace j+=3 with j = i*3. That is, the value of j actually is a function of the value of i.

When to View the Annotation Report

Use the Annotation Report window to view the types of annotations present in your project sources and access their locations. You can view the Annotation Report at any time to check the annotations. In addition:

See Also