Version | System A | System B | System C |
---|---|---|---|
Intel Advisor XE 2022 (default) | ― | + | + |
Intel Advisor XE 2021 | ― | + | + |
Key: + = Available for use, ― = Not available for use.
Version | Modulefile Name |
---|---|
2022 | iutils/xe2022 |
2021 | iutils/xe2021 |
In the Intel compiler environment, execute the module command as shown below.
$ module load iutils
For details on the module command, see Modules.
Command | Description |
---|---|
advixe-gui | Starts the Intel Advisor GUI. |
advixe-cl | Starts the Intel Advisor command-line version. |
When using the Intel Advisor, please specify an appropriate compile option for each tool to analyze.
Tool | Compile Option |
---|---|
Survey and Suitability | -g -O2 |
Correctness | -g |
For details, please refer to “Build Settings for C/C++ Applications” and “Build Settings for Fortran Applications” under “Choosing and Building a Target” in “Intel Advisor Help” that you can find in the IntelR Advisor 2013 Documentation.
Option | Description |
---|---|
-collect=string | Specifies the analysis type. |
-help | Displays the help information of the command. |
For details of options, refer to the output of advixe-cl -help.
Type | Description |
---|---|
survey | Measures the elapsed time. |
suitability | Estimates the progress rate of processing. |
correctness | Detects the parallelization problems. |
The Survey tool is required to be used at first. Therefore, please compile with the -g -O2 option.
Example of Compiling with the Survey tool
$ icc -g -O2 test.c
To start the Intel Advisor, execute the advixu-gui command on the Exceed onDemand.
For details on the xrun command, see Interactive Processing.
$ xrun advixe-gui
Select File > New > Project, the window below appears. Enter the appropriate Project name, then click Create Project.
The Project Properties window appears, specify the target program in the Application text box, then click OK. If an argument is required, specify it here.
Advisor XE Workflow appears at the left of the window when the settings of project properties is completed. You can use the Intel Advisor by following the procedures of the Workflow.
At first, click Collect Survey Data under 1. Survey Target in the Advisor XE Workflow. This executes the application, and locates the loops and functions targeted for parallelism. When the application finishes, the Survey Report window will be displayed. Also, you can find the survey summary by clicking the Summary tab on the top of the window.
Based on the result of Survey Target, add Intel Advisor XE annotations to the processing targeted for parallelism. You can check the predicted parallel performance by executing the application that is added annotations and is re-compiled.
#include "advisor-annotate.h"
.....
ANNOTATE_SITE_BEGIN(sitename1);
for ( ....
{
ANNOTATE_TASK_BEGIN(taskname1);
...
ANNOTATE_TASK_END();
}
ANNOTATE_SITE_END();
use advisor_annotate
.....
call annotate_site_begin(sitename1)
do .....
call annotate_task_begin(taskname1)
....
call annotate_task_end()
enddo
call annotate_site_end()
Compile a program added anotations to check the parallel performance. When compiling, you need to specify the -g -O2 option, and also specify the include file path for annotation by -I option.
$ icc -g -O2 test.c -I${ADVISOR_XE_2013_DIR}/include
$ ifort -g -O2 test.f90 -I${ADVISOR_XE_2013_DIR}/include/intel64
Execute Collect Suitability Data under 3. Check Suitability in the Advisor XE Workflow to the re-compiled application, to check the parallel performance.
To predict problems that can occur when parallelized, execute 4. Check Correctness in the Advisor XE Workflow. When executing Check Correctness, you need to use the application compiled by the -g debug option, not the optimization options.
$ icc -g test.c
Specify the re-compiled application, then execute Collect Correctness Data under 4. Check Correctness in the Advisor XE Workflow.
Based on the result so far, implement the parallelism.
The Survey tool is required to be used at first. Therefore, please compile with the -g -O2 option.
$ icc -g -O2 test.c
Specify survey to the -collect option, then start the Intel Advisor CUI by advixe-cl. For details on the tssrun command, see Interactive Processing.
$ tssrun advixe-cl -collect=survey ./a.out
To check the results, execute the advixe-gui command in the X-Windows(GUI) environment(e.g., Exceed onDemand) with Intel Advisor GUI.
Based on the result of the check with -collect-survey, add Intel Advisor XE annotations to the processing targeted for parallelism. You can check the predicted parallel performance by executing the application that is added annotations and is re-compiled.
#include "advisor-annotate.h"
.....
ANNOTATE_SITE_BEGIN(sitename1);
for ( ....
{
ANNOTATE_TASK_BEGIN(taskname1);
...
ANNOTATE_TASK_END();
}
ANNOTATE_SITE_END();
use advisor_annotate
.....
call annotate_site_begin(sitename1)
do .....
call annotate_task_begin(taskname1)
....
call annotate_task_end()
enddo
call annotate_site_end()
Compile a program added anotations to check the parallel performance. When compiling, you need to specify the -g -O2 option, and also specify the include file path for annotation by -I option.
$ icc -g -O2 test.c -I${ADVISOR_XE_2013_DIR}/include
$ ifort -g -O2 test.f90 -I${ADVISOR_XE_2013_DIR}/include/intel64
To check the parallel performance, specify suitability with the -survey option to the re-compiled application, and execute the Intel Advisor CUI by advixe-cl.
$ tssrun advixe-cl -collect=suitability ./a.out
To check the results, execute the advixe-gui command in the X-Windows(GUI) environment(e.g., Exceed onDemand) with Intel Advisor GUI.
Next, predict problems that can occur when parallelized. At this time, you need to use the application compiled by the -g debug option, not the optimization options.
$ icc -g test.c
Specify correctness with the -survey option to the re-compiled application, and execute the Intel Advisor CUI by advixe-cl.
$ tssrun advixe-cl -collect=correctness ./a.out
To check the results, execute the advixe-gui command in the X-Windows(GUI) environment(e.g., Exceed onDemand) with Intel Advisor GUI.
Based on the result so far, implement the parallelism.