Suitability Report, Site Row

The Site rows summarize the predicted performance improvement for each parallel site you have annotated in your application. If only one annotated parallel site was executed, only a single site row will be present.

Selecting a Site row allows you to view the characteristics of the selected parallel site and choose its modeling parameters, including the scalability graph and likely causes, modeling of tasks and task iterations, and runtime impact of overhead and contention items. Based on your current annotations, the check boxes under Runtime Modeling show what would happen if you agree to fix different types of parallel overhead items when you add parallelism.

View the upper-left corner. Your goal is to make the Site Gain as close to the CPU count as possible. Improving each site's Site Gain will improve the combined Maximum Program Gain for All Sites.

Note

If you see an Annotation Label named _too_deep_, this indicates that the call behavior of your program results in nesting of site and/or task annotations more deeply than Intel Advisor can handle. The deeper occurrences have all been merged into this _too_deep_ pseudo-site. This can indicate a problem with the placement of the annotation pair. For example, deep recursions or not executing site-end or task-end annotations can result in such nesting.

For Each Site, Decide Whether to Modify or Keep Annotations

Use the Suitability Report window to view the predicted parallel performance of each parallel site and its impact on the Maximum Program Gain for All Sites. For example, if a site either has a Site Gain of less than 1.0 or does not contribute to Maximum Program Gain for All Sites, modify or remove its annotations. In contrast, any site that contributes to Maximum Program Gain for All Sites should be kept. For most sites, carefully examine the annotations, overhead assumptions, and related code.

Within the upper-right area of the Suitability Report window, if multiple parallel sites were detected during execution, select a different Site row to display its details.

Implementing Modeling Assumptions Later When Adding Parallel Code

In the lower-right part of the Suitability Report under Runtime Modeling, changing a checkmark does not resolve an issue - it configures the modeling of your proposed parallel program execution. To implement the modeled improvements indicated by the check boxes, use specific parallel framework constructs in the Add Parallel Framework step of the workflow and consider tuning your parallel code.

For more complete information about compiler optimizations, see our Optimization Notice.