User Guide

  • 2020
  • 06/18/2020
  • Public Content
Contents

Problem: Unknown Frames

Cause

When the
Intel® VTune™
Profiler
finalizes collected data, it uses symbol information to display stack information for each function. If the
VTune
Profiler
cannot find symbols for system modules used in your application, the stack data displayed in the
Bottom-up
/
Top-down Tree
windows and
Call Stack
pane may be either incomplete or incorrect. The following scenarios are possible:
If
Then
You run Hotspots or/and Threading analysis and your application uses a system API intensively
VTune
Profiler
cannot unwind the stack correctly since stacks do not reach user code and stay inside the system modules. Often such stacks may be limited to call sites from system modules. Since
VTune
Profiler
tries to attach incomplete stacks to previous full stacks via
[Unknown frame(s)]
, you may see
[Unknown frame(s)]
hotspots when attributing system layers to user code via the Call stack mode option on the Filter bar.
You run Threading analysis and your application uses synchronization API causing waits that slow down the application
Windows* only: Missing PDB files may lead to the incorrect stack information only for 32-bit applications. For 64-bit applications, stack unwinding information is encoded inside the application.

Solution

  1. On Windows, make sure the search directories, specified in the
    Binary/Symbol Search
    dialog box, include paths to PDB files for your application modules. For more details, see the Search Directories topic.
  2. On Windows, specify paths to the Microsoft* symbol server in
    Tools > Options > Debugging > Symbols
    page. On Linux, make sure to install the debug info packages available for your system version. For more details, see the Using Debug Information topic.
  3. Re-finalize the result.
On Windows, the
VTune
Profiler
will use the symbol files for system modules from the specified cache directory and provide a more complete call stack.

Product and Performance Information

1

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