インテル® VTune™ Amplifier 2018 ヘルプ

Problem: Unknown Frames

Cause

When the Intel® VTune™ Amplifier finalizes collected data, it uses symbol files (typically PDB filessymbol information is included in binary files) to display stack information for each function. If the VTune Amplifier 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 Concurrency analysis and your application uses a system API intensively

VTune Amplifier 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 Amplifier 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 the Locks and Waits analysis and your application uses synchronization API causing waits that slow down the application

Note

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. Make sure the search directories, specified in the Binary/Symbol Search or the Source Search dialog box, include paths to PDB files for your application modules. For more details, see the Search Directories topic.

  2. 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.

Outcome: VTune Amplifier will use the symbol files for system modules from the specified cache directory and provide a more complete call stack.

関連情報