User Guide


Other Parallel Frameworks

Intel Advisor
helps you prepare your program for adding parallelism, regardless of the parallel framework you choose.
Intel Advisor
provides the ability to predict the parallel behavior of your serial program and lets you determine the feasibility of possible parallel regions before you actually add parallelism.
Intel Advisor
does not perform analysis of your parallel program, so you can use any parallel framework. You can use
Intel Advisor
with high-level parallel frameworks that use a fork-join model, or with low-level APIs that provide explicit thread control.
Intel recommends using the parallel frameworks
Intel® oneAPI Threading Building Blocks
) or OpenMP*, which are included with Intel® oneAPI Toolkits. These high-level frameworks provide parallel features well-suited for most multi-core computer systems.
If you decide to use a different parallel framework or a low-level threading API, please be aware of the following considerations:
  • Some parallel frameworks have limited abilities to scale with different number of cores, handle load balancing, and handle loop scalability (chunking), and so on.
  • As part of your planning, you might create a mapping of at least
    Intel Advisor
    Site, Task, and Lock annotations to the equivalent code constructs in the chosen parallel framework. That is, create a list that maps the
    Intel Advisor
    annotations to your parallel framework's features. Thus, you need to be aware of all annotations. For example, all
    Intel Advisor
    programs need to use parallel site and task annotations. Most programs will also use lock annotations. For a complete list of annotations, see the help topic Summary of Annotation Types.
  • Some parallel frameworks require that you use certain compilers that recognize the parallel framework's keywords, while others are libraries that can be used with multiple compilers.
  • Some parallel frameworks may not correctly handle multi-program workloads.
In all cases, you need to learn how to use the parallel framework that you select. The current Add Parallelism workflow step involves replacing annotations with chosen parallel framework code.

Product and Performance Information


Performance varies by use, configuration and other factors. Learn more at