User Guide


Annotating Parallel Sites and Tasks

You add
into your program to mark the tasks and parallel sites. The annotations are one-line macro uses or function calls that have no effect on the behavior of your program.
Annotations allow you to mark your tentative decisions about your program's task structure before you modify the program to use parallel execution. Annotations are used by the
Intel® Advisor
Suitability and Dependencies tools.
After you decide on the parallel site(s) and task(s), add the annotations into your source code.
To simplify adding
Intel® Advisor
  • When using the
    Microsoft Visual Studio*
    code editor, you can use the Annotation Wizard.
  • With any editor, use the annotation assistant in the
    Survey Report
    Survey Source
    window, or the
    No Data
    message to copy example annotation code and build settings.
Code examples throughout this group of topics illustrate the use of these annotations.
As you use
Intel® Advisor
to investigate possible code regions for adding parallel execution, you will find some areas are not feasible. Adding a comment to explain why that site (or task) was not chosen may help later. For example, with C/C++ code:
... // Investigated the following function call as a parallel task and dismissed // June 2014. Need to first re-write the function to improve parallel // performance and fix the data race. // // ANNOTATE_TASK_BEGIN(func1); . . .

Product and Performance Information


Intel's compilers may or may not optimize to the same degree for non-Intel microprocessors for optimizations that are not unique to Intel microprocessors. These optimizations include SSE2, SSE3, and SSSE3 instruction sets and other optimizations. Intel does not guarantee the availability, functionality, or effectiveness of any optimization on microprocessors not manufactured by Intel. Microprocessor-dependent optimizations in this product are intended for use with Intel microprocessors. Certain optimizations not specific to Intel microarchitecture are reserved for Intel microprocessors. Please refer to the applicable product User and Reference Guides for more information regarding the specific instruction sets covered by this notice.

Notice revision #20110804