Intel® Advisor User Guide

ID 766448
Date 10/31/2024
Public
Document Table of Contents

Problem: Code Region is not Marked Up

Symptoms

A code region of interest is not analyzed and has Outside of Marked Regionwhy-not-offloaded message in the Details pane of the Accelerated Regions tab after you execute the Offload Modeling perspective.

Details

To limit the scope of collections, the Intel® Advisor selects loops that match certain criteria and marks them up for analysis. By default, the Intel Advisor performs a smart region selection using the generic markup.

If a code region does not satisfy the markup criteria, you should see the Outside of Marked Regionwhy-not-offloaded message or the System Modulediagnostics message in the Details pane of the Accelerated Regions tab.

Cause

Your code region does not satisfy one or more markup rules for a specified markup mode. If you use the default generic mark-up strategy, make sure your loop of interest satisfies the following rules:

  • It is not a system module or a system function.

  • It has instruction mixes.

  • It is executed.

  • Its execution time is not less than 0.02 seconds, which is a sampling interval of the Intel Advisor. For more information about execution time limitations, see Total Time is Too Small for Reliable Modeling.

Possible Solution

If a code region does not satisfy the generic markup rules, but you want to analyze it, do one of the following:

  • You can change the markup strategy by using a --markup=<markup_mode> option of analyze.py or --select markup=<markup-mode> for --collect=performance. The following parameters select only loops inside regions that are already parallel:

    • generic or gpu_generic (default) - Select loops executed on a GPU.

    • omp - Select loops only in OpenMP parallel regions.

    • icpx -fsycl - Select loops only in SYCL parallel regions.

    • daal - Select loops only in Intel® oneAPI Data Analytics Library parallel regions.

    • tbb - Select loops only in Intel® oneAPI Threading Building Blocks parallel regions.

    NOTE:

    omp, icpx -fsycl, and generic/gpu_generic select loops in the project so you can run another collection or performance modeling without markup or loop selection options.

  • If your loops of interest are not marked up because they have no static instruction mixes or not executed, you can limit the analysis to these specific loops by using the --select-loops option with the analyze.py script. With this option, only the loops specified are analyzed. For example:

    advisor-python <APM>/analyze.py <project-dir> --select-loops=[<file-name1>:<line-number1>,<file-name1>:<line-number2>,<file-name2>:<line-number3>]
    NOTE:
    Replace <APM> with $APM on Linux* OS or %APM% on Windows* OS.

    With --collect=performance, use --select option to select specific loops to analyze by source location, ID, or other criteria.