User Guide


Enforce Offloading for Specific Loops

Model performance on a target device for specific loops only even if they are not profitable.
If you want to check offload profitability only for specific loops or if your loop of interest is reported as not recommended for offloading to an accelerator, you can model performance only for these loops and ignore all other loops.
: In the commands below, make sure to replace the
with your application executable path and name
executing a command. If your application requires additional command line options, add them
the executable name.
To do this:
  1. Collect baseline performance data. For example, run the Survey and Characterization analyses:
    advisor --collect=survey --static-instruction-mix --project-dir=./advi_results -- ./myApplication
    advisor --collect=tripcounts --flop --stacks --enable-cache-simulation --target-device=xehpg_512xve --project-dir=./advi_results -- ./myApplication
  2. Rerun performance modeling for selected loops/functions only. For example:
    advisor --collect=projection --select=foo.cpp:34,bar.cpp:192 --enforce-offload --project-dir=./advi_results
    • --select
      lists loops/functions to analyze by file and line number, loop/function ID, or criteria.
    • --enforce-offloads
      models performance for all selected loops/functions even if offloading their child loops/functions is more profitable.
View the
Offload Modeling
in the
Intel® Advisor
GUI or view an HTML report. The results will show performance estimated for the selected loops/functions only.

Product and Performance Information


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