workflow

Explain typical Intel Advisor user scenarios, with corresponding command lines.

GUI Equivalent

See Get Started with Intel® Advisor.

Syntax

--workflow

Usage

Explain typical Intel Advisor user scenarios, with corresponding command lines. For example:

Add SIMD Parallelism:

1. Find hotspots.

advixe-cl --collect=survey --project-dir=./advi --search-dir src:r=./src -- ./bin/myApplication
advixe-cl --report=survey --project-dir=./advi --search-dir src:r=./src --format=text --report-output=./out/survey.txt

2. Determine the number of loop iterations.

advixe-cl --collect=tripcounts --project-dir=./advi --search-dir src:r=./src --./bin/myApplication
advixe-cl --report=tripcounts --project-dir=./advi --search-dir src:r=./src --format=text --report-output=./out/tripcounts.txt

3. Check for possible dependencies.

advixe-cl --collect=dependencies --project-dir=./advi --search-dir src:r=./src -- ./bin/myApplication
advixe-cl --report=dependencies --project-dir=./advi --search-dir src:r=./src --format=text --report-output=./out/dependencies.txt

4. Check memory access patterns.

advixe-cl --collect=map --project-dir=./advi --search-dir src:r=./sr c -- ./bin/myApplication
advixe-cl --report=map --project-dir=./advi --search-dir src:r=./src --format=text --report-output=./out/map.txt

5. Update the application to enable automatic compiler vectorization, or explicitly mark the loops you need to vectorize. Rebuild the application and test.

Add Threading Parallelism

1. Find hotspots. This step is similar to the first step in the SIMD-parallel workflow (above).

2. Determine the number of loop iterations. This step is similar to the second step in the SIMD parallel workflow (above).

3. Add annotations to the application source code and rebuild the application.

4. Collect suitability data. Note: Annotations must be present in the source code for this collection to be successful.

advixe-cl --collect=suitability --project-dir=./advi --search-dir src:r=./src -- ./bin/myApplication
advixe-cl --report=suitability --project-dir=./advi --search-dir src:r=./src --format=text --report-output=./out/suitability.txt

5. Check for the possible dependencies.

advixe-cl --collect=dependencies --project-dir=./advi --search-dir src:r=./src -- ./bin/myApplication
advixe-cl --report=dependencies --project-dir=./advi --search-dir src:r=./src --format=text --report-output=./out/dependencies.txt

6. Display a list of currently used annotations.

advixe-cl --report=annotations --project-dir=./advi --search-dir src:r=./src --format=text --report-output=./out/annotations.txt

7. Update the application using the chosen parallel coding constructs. Rebuild the application and test.

Tip

Use an option file for efficiency. Enter one option on each line. No spaces are allowed in the option entry; use a new line. The option file must be in UTF-8 format.

advixe-cl --report=annotations --option-file=./advi/option.txt
with an option.txt file that looks like this:
 --project-dir
./advi  
--search-dir
src:r=./src
--format=text
--report-output
./out/annotations.txt

See Also

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