Model Threading Parallelism
Use the Suitability Report Window
Location in Window
Any annotation-related error the Suitability tool detects appears at the top of the
Suitability Reportwindow. If you see such errors, the displayed Suitability data may not be reliable. To view the source location associated with an error, click the button. To fix the error, read the displayed error message, modify your source code to fix the problem, rebuild your target executable, and run Suitability tool analysis again.
The upper-left area shows the
Maximum Program Gain for All Sitesin the program. Your overall goal of adding parallelism is to increase the
Maximum Program Gain for All Sitesso the parallel program will execute as fast as possible. The measured serial execution runtime, predicted parallel runtime, and any measured are displayed below
Maximum Program Gain for All Sites. Use the predicted Suitability gain values to help you make informed decisions about where to add parallelism.
Use the upper-right row of to model performance. Choose a hardware configuration and threading model (parallel framework) values from the drop-down lists. If you select a
Intel® Xeon Phi™processors, an additional value for total
Below this row is a grid of data that shows the estimated performance of each parallel site detected during program execution. The
Site Labelshows the argument to the site annotation. Examine the predicted
Impact to Program Gain(higher values are better) to estimate how much each site contributes to the
Maximum Program Gain for All Sitesfor all sites (described above). To expand the data under
Combined Site Metricsor
Site Instance Metrics, click the icon to the right of that heading; to collapse data, click to the right of that heading.
To show or hide the side command toolbar, click the or icon.
If you choose a
CPU, to view detailed characteristics of the selected site as well as its tasks and locks, click the
Scalability of Maximum Site Gaingraph summarizes performance for the selected site. The number of CPU processors or total number of coprocessor threads appears on the horizontal X axis and the target's predicted performance gain appears on the Y axis. To change the default
CPU Countand the
Maximum CPU Count, set the Options value.
Below the graph is a list of issues that might be preventing better
predictedperformance gains as well as a summary of serial and predicted parallel time. To expand a line, click the down arrow to the right of the item's name. Most issues are related to the
Runtime Modeling. Later, you can use other Analyzer tools like to measure
actualperformance of your parallel program.
Loop Iterations (Tasks) Modeling(or
Tasks Modeling) to experiment with different loop structures, iteration counts, and instance durations that might improve the predicted parallel performance.
Applyto view the impact on the predicted performance.
Runtime Modelingto learn which parallel overhead categories might have an impact on parallel overhead. If you agree to address a category later by using the chosen parallel framework's capabilities or by tuning the parallel code after you have implemented parallelism, check that category.
If the chosen
Intel Xeon Phior
Offload to Intel Xeon Phi, additional options appear below the
Runtime Modelingarea. To expand this area, click the down arrow to the right of
Intel Xeon Phi Advanced Modeling.
Lower, after clicking
If you chose a
Site Detailstab shows details about the selected parallel site, as well as details for each task and lock executed in that site.
- Double-click a row (or right-click and selectView Sourcefrom the context menu) to display theSuitability Sourcewindow. Later, to return to theSuitability Reportwindow, clickSuitability Report.
- Right-click a row and selectEdit Sourcefrom the context menu to display the corresponding source file in a code editor. When using theGUI on Linux* OS, the editor defined by theIntel® Advisorappears with the file open at the corresponding location. When using theOptions > Editor dialog boxGUI on Windows* OS, the file type association (orIntel® AdvisorOpen Withdialog box) determines the editor used. When using Microsoft Visual Studio*, the Visual Studio code editor appears with the file open at the corresponding location. Later, to return to theSuitability ReportorSuitability Sourcewindow:
- Click theResulttab.
- Click eitherSuitability ReportorSuitability Source.
Use the Suitability Source Window
- Use theCall Stackpane to view different source locations in the call stack.
- Double-click a line (or right-click and selectEdit Source) to open the corresponding source file in a code editor. When using theGUI on Linux* OS, the editor defined by theIntel® Advisorappears with the file open at the corresponding location. When using theOptions > Editor dialog boxIntel AdvisorGUI on Windows* OS, the file type association (orOpen Withdialog box) determines the editor used. When using Microsoft Visual Studio*, the Visual Studio code editor appears with the file open at the corresponding location. Later, to return to theResulttab, clickResult.
- Return to theSuitability Reportwindow by clickingSuitability Report.
Understand the Scalability Graph in the Suitability Report
Tips on Understanding the Performance Data
- If theSite Gainvalues for the selected site shows an estimated performance gain of 1.0 or less, the overhead of parallel thread execution exceeds the potential performance gains. Modify or remove the annotations for the task(s) and its enclosing site. Repeat this for each parallel site.
- If theSite Gainvalues for the selected site shows a performance gain greater than 1.0, look at the site's contribution to theMaximum Program Gain for All Sites, which applies to all parallel sites. For sites that do not contribute significantly to theMaximum Program Gain for All Sites, modify or remove the annotations for the task(s) and its enclosing site. For sites that only contribute slightly to theMaximum Program Gain for All Sites, examine more closely the annotations and the assumptions about fixing the various overhead costs of parallel thread execution. In some cases, you may be able to adjust the annotations to improve the performance gain or reduce the overhead. Repeat this for each parallel site.
- When theMaximum Program Gain for All Sitesfor all sites and theSite Gainvalues for all the sites show a moderate or significant performance gain, proceed to the next workflow step that uses the Dependencies tool to check your remaining annotated sites for data sharing problems.