Intel® Advisor User Guide

ID 766448
Date 3/31/2023
Public

A newer version of this document is available. Customers should click here to go to the newest version.

Document Table of Contents

Key Concepts

This group of topics introduces you to the key concepts and terms needed to add parallelism to a program. A list of key terms is also provided.

Over the last few years, processor technology found in personal laptops, desktops, and enterprise servers has shifted from making single-core processors faster to having multiple cores in each processor.

In a parallel program, portions of the program (tasks) may execute at the same time. On multi-core systems, this can provide better performance.

To parallelize your application, you need to identify the potential parallel tasks, modify your code to run correctly when these tasks execute in parallel, and add code to execute them in parallel. Intel® Advisor combines a methodology with a set of tools to help you add this parallelism to your program. You work on the sequential version of your program and the tools model how it would behave if it was parallelized in the ways you specify. As an add-in to Microsoft Visual Studio*, Intel Advisor fits right into a Windows* OS development environment.

NOTE:
In Visual Studio* 2022, Intel Advisor provides lightweight integration. You can configure and compile your application and open the standalone Intel Advisor interface from the Visual Studio for further analysis. All your settings will be inherited by the standalone Intel Advisor project.

Your final step will be to express the parallelism in your program using a high-level parallel framework (threading model) like Intel® oneAPI Threading Building Blocks (oneTBB) or OpenMP*, or low-level threading APIs.

For native C/C++ or Fortran code, Intel recommends using the high-level oneTBB or OpenMP frameworks, which are included with several Intel® oneAPI Toolkits. Intel Advisor's documentation shows you how to introduce parallelism into your program using these frameworks. Intel Advisor provides multiple C/C++ samples and several Fortran samples.

For managed C# code on Windows* OS, use the Microsoft Task Parallel Library* (TPL). Intel Advisor provides a C# nqueens sample.

NOTE:
C# and .NET support is deprecated starting Intel® Advisor 2021.1.

This is an interactive process, where you repeat these basic steps as you identify more sites for adding parallelism.

The related group of topics provides an introduction to parallelism, and to parallel framework implementations.