Intel® VTune™ Profiler Release Notes and New Features

ID 764439
Updated 11/18/2024
Version 2025.0
Public

This page provides the current Release Notes for Intel® VTune™ Profiler (starting with Intel® VTune™ Amplifier XE 2017). The notes are categorized by major version, from newest to oldest, with individual releases listed within each version section.

NOTE: Intel® VTune™ Amplifier has been renamed to Intel® VTune™ Profiler starting with version 2020.

Click a release to expand it into a summary of new features and changes in that version since the last release.

The installation guides are posted separately:
View Installation Guide

For Intel® VTune™ Profiler usage, visit Intel® VTune™ Profiler User Guide

Where to Find the Release

If you have a qualifying license for this product (i.e. an unexpired free license or a paid license with active support at the time of the build date for this product release), you can download the installer by logging in to Intel® Software Development Products Registration Center and selecting the appropriate product.

You may need to create an account and/or register your product. For additional information please see:

Product Registration and Sign-Up FAQ

Where to Get Help

For technical support, including answers to questions not addressed in this product, visit the technical support forum, FAQs, and other support information at:

Register your product at Intel® Software Development Products Registration Center by providing your email address. Registration entitles you to free technical support, product updates and upgrades for the duration of the support term. It also helps Intel recognize you as a valued customer in the support forum.

System Requirements

Please see the Intel® VTune™ Profiler System Requirements.

New in this Release

2025.0.1 

  • Updated for critical bug fixes and security issues.

2025.0 

New Hardware Support

  • Added support for Intel® Core™ Ultra 200V, codenamed Lunar Lake, Intel® Core™ Ultra 200 "Arrow Lake-S" series and 6th gen. Intel® Xeon® Scalable Processors, codenamed Granite Rapids.
  • Identify GPU-bound bottlenecks, optimize rendering pipelines, and improve overall application responsiveness for media and content creation applications on Intel® Core™ Ultra 200V, codenamed Lunar Lake.
  • Added support for various FLOP metrics for E-core server products such as SRF and GRR.

New Language Support

  • Added profiling support for Python 3.11. Improved productivity with the ability to focus Python profiling to only areas of interest and control performance data collection with ITT APIs.

Device-Side Optimization for Direct X APIs

  • Identify and optimize device-side inefficiencies for Direct X APIs.

Reduced trace file generation for APS 

  • APS has reduced trace file generation, consolidating data into one compressed file per node, and can now simulate results for up to 1 million nodes, significantly reducing report generation time.

  • Improved finalization time with "finalization deferred" mode improvements through the elimination of the stack walking procedure. 

Platform Profiler capabilities in Intel® VTune™ Profiler have transitioned to the EMON command line interface. 

  • The Platform Profiler capabilities in Intel® VTune™ Profiler has released its final version, available as stand-alone download. No further feature improvements or security fixes will be available after this final release. The capabilities are now transitioned to the EMON command line interface. For more information, see the Intel® VTune™ Profiler – Platform Profiler transition notice.

Known Issues

2025.0 Release

  1. VTUNE 2025.0 MAY HALT GPU BASIC BLOCK LATENCY OR MEMORY LATENCY SOURCE ANALYSIS
    VTune™ Profiler may halt GPU Basic Block Latency or Memory Latency Source analysis with the error:
    GTPin: <Kernel Name> Not enough free registers while scratch-mapped registers (SREGs) are disabled.
    This occurs when the profiled application’s kernels fully utilize the GPU register file, and instrumentation exceeds the register capacity. The recommended workaround is to use alternative analysis types, such as EU Stall Sampling, for source analysis.
  2. VTUNE 2025.0 CROWDSTRIKE CAUSES PIN RUNS TO FAIL (WINDOWS ONLY)
    Workarounds for this issue include:
    Exclusion for folder where AE tools are installed inside oneAPI installation for e.g. ‘C:\Program Files (x86)\Intel\oneAPI\’
    Exclusion for folders from where users starting their application to be profiled.
    If these do not resolve the issue:
    Remove CrowdStrike from the systems which faces this issue.

Common Limitations

RUNNING TIME IS ATTRIBUTED TO THE NEXT INSTRUCTION (VASP-3854)

To collect data about time-intensive running regions of the target, Intel® VTune™ Profiler interrupts the execution of target threads and attributes the time to the context IP address.

Due to the collection mechanism, the captured IP address points to the instruction after the most time-intensive one. This causes the running time to get attributed to the next instruction (or sometimes to subsequent instructions) in the Assembly view. In rare cases, this can also lead to incorrect attribution of running time in the source. The time can be erroneously attributed to the source line after the actual hot line.

If the inline mode is ON and the program has small functions inlined at the hotspots, this can cause the running time to be attributed to the wrong function since the next instruction can belong to a different function in tightly inlined code.

VTUNE CRASHES ON FREEBSD 11/12 AFTER PRESSING CTRL-C DURING COLLECTION (VASP-17676)
Upon termination of collection on FreeBSD with a Ctrl-C operation, the next VTune hardware event-based collection fails with this error- PMU resource(s) currently being used by another profiling tool or process: another PMU collection session may be running.

As a workaround, use -command stop to stop the collection.

COLLECTION MISSING DATA FOR CORE_0 ON SKYLAKE-X SYSTEMS (VASP-11480)
On some systems based on Intel microarchitecture code name Skylake-X with enabled SMT mode, VTune™ Profiler hardware sampling analysis can collect data against less logical CPUs than available on the system. For example, the problem was reproduced on Intel® Core™ i9-7900X 10C20T CPU installed on an Asus* PRIME X299-DELUXE motherboard.

As a workaround, upgrade the BIOS and the firmware of the board to 0802 or a newer version.

AN APPLICATION THAT ALLOCATES MASSIVE CHUNKS OF MEMORY MAY FAIL TO WORK UNDER VTUNE™ PROFILER
If a 32-bit application allocates massive chunks of memory (close to 2 GB) in the heap, it can fail to launch with VTune™ Profiler but execute independently without error. This happens because VTune™ Profiler requires additional memory when profiling an application. As a workaround, use a larger address space. For example, convert the project to 64-bit.

HARDWARE EVENT-BASED ANALYSIS MAY CRASH CERTAIN INTEL® CORE™ I7 PROCESSOR-BASED SYSTEMS WHEN DEEP SLEEP STATES ARE ENABLED
On some Intel® Core™ i7 processor-based (based on Intel microarchitecture code named Nehalem) systems with C-states enabled, sampling may cause system hanging due to a known hardware issue. To avoid this, disable the “Cn (ACPI Cn) report to OS” BIOS option before sampling with the VTune™ Profiler on Intel Core i7 processor-based systems.

INSTRUCTION SET REFERENCE DOCUMENT IS NOT POSITIONED ON DESCRIPTION OF PROPER INSTRUCTION
The reference information for assembly instructions can be opened in any PDF viewer, but only Adobe* Acrobat Reader* supports the positioning of the instruction reference document on the required page. To ensure correct functionality of this feature, install the latest version of Adobe Acrobat Reader.

VTUNE™ PROFILER DOES NOT SUPPORT PROFILING AN APPLICATION LAUNCHED UNDER DEBUGGER
The Hotspots, Threading, Memory Access with object tracking, and Input and Output analysis types provide incorrect results when analyzing an application launched under a debugger. VTune™ Profiler does not detect whether a debugger is attached to a profiled application. Make sure that no debugging tools are attached to the application that is profiled with the VTune™ Profiler.

ONLY ONE STACK FRAME IS SHOWN IN JAVA* CODE IF IBM* J9* JVM IS USED (VASP-3535)
Currently, IBM* J9* JVM does not support Java* stack unwinding.

RESULTS NOT COLLECTED FOR PROCESSES TERMINATED WITH TERMINATEPROCESS()
No results are displayed for a profiled process that is terminated by a different process calling TerminateProcess(). Use an alternate method to terminate the process.

DO NOT USE -IPO (LINUX*)//QIPO (WINDOWS*) OPTION WITH INTEL COMPILER VERSION EARLIER THAN 13.0. (VASP-3534)
If you are using a version of Intel® compiler that is 13.0 or older, use the additional option -inline-debug-info (Linux*)//debug:inline-debug-info (Windows*) to get performance data on inline functions. However, avoid using the /Qipo option. Currently this option disables the generation of the inline debug information in the compiler. Note that the Intel compiler integrated into the Microsoft Visual Studio* IDE uses the -ipo//Qipo by default in the Release configuration.

JAVA* SOURCE LINE MAY BE SHOWN INCORRECTLY FOR ORACLE JDK* 6U25 X64
Drilling down to Java* source code from VTune™ Profiler results may show incorrect source line. The issue occurs with Java* applications built with Oracle JDK* 6u25 x64. This is a JDK* problem. Refer to issues JDK-7051767 and JDK-7047624 in the Oracle bug database.

RESULT FINALIZATION MAY BE SLOW IF RESULTS ARE LOCATED IN A REMOTE NETWORK DIRECTORY (VASP-995)
The problem is caused by slow network access. To improve performance, use local directory for result storage.

CALL STACK CANNOT BE UNWOUND VIA NO RETURN FUNCTIONS (VASP-3350)
If the analyzed application contains functions without ret instruction (for example, calling exit()), unwinding the call stack to its caller and higher may fail (no stack frames shown).

ATTACHING THE VTUNE™ PROFILER TO A PROCESS MAY TAKE SOME TIME (VASP-2289)
Sometimes, your target application may complete execution before data collection begins. In this case, VTune™ Profiler may report an error. Increase the duration of your test application if necessary.

Command line option "vtune -command status" is currently supported only for user-mode sampling and tracing based analysis types, and not for EBS analysis types.

HARDWARE EVENT-BASED ANALYSIS MAY CAUSE UNPREDICTABLE SYSTEM BEHAVIOR ON PROCESSORS BASED ON INTEL MICROARCHITECTURE CODE NAMED SANDY BRIDGE
On processors based on Intel microarchitecture code name Sandy Bridge, hardware event-based sampling may cause unpredictable system behavior due to a known hardware issue (see erratum BK105). To avoid this, avoid running Microarchitecture Exploration (formerly, General Exploration) or Custom Hardware event-based analysis with precise events on these systems unless a BIOS workaround for the erratum is provided.

VTUNE™ PROFILER MAY DETECT WHICH TIMER SOURCE TO USE INCORRECTLY ON INTEL® XEON® PROCESSOR E5-XXXX PROCESSORS
In User-mode Sampling and Tracing based analysis (Hotspots, Threading), the following message may be displayed in command line or Debug Window:

Warning: Cannot load data file `<path>\data.0\18385-18389.0.trace' (SampleCallback: timestamps aren't ascended!).
As a workaround, collect results from the command line using the -run-pass-thru option:

vtune -collect hotspots -run-pass-thru=-timestamp=sys -- <application>

HARDWARE EVENT-BASED ANALYSIS DOES NOT WORK IF MORE THAN 128 EVENTS ARE GATHERED SIMULTANEOUSLY (VASP-1992)
Decrease number of PMU events in analysis settings to resolve it.

ITT API TASK OR FRAME IS NOT SHOWN IN RESULTS IF ITS END OCCURS WHEN COLLECTOR IS INACTIVE (VASP-3354)
When ITT task or frame end notification occurs after collection was paused, or detach or stop command issued, the frame or task is not displayed in the result.

AN APPLICATION MAY EXPERIENCE THE STACK OVERFLOW EXCEPTION WHEN RUNNING UNDER THE VTUNE™ PROFILER (DOC-200)
An application allocating massive chunks of memory on a thread stack may experience the stack overflow exception and fail when running under the VTune™ Profiler, while running flawlessly on its own. This happens because VTune™ Profiler requires additional space on an application thread stack for profiling needs. To work around this problem, consider using larger thread stack space.

VTUNE™ PROFILER CANNOT LOAD DRIVERS INTO KERNEL
Most Android* kernels only allow signed drivers. If you try and install a driver (sep3_10.ko, pax.ko, vtsspp.ko, SOCWATCH1_3.ko or apwr3_1.ko), which was built after the kernel was built, you will get an error message stating that no signing key is found. To work around this problem, you must build drivers with the exact signing key created when the Android* OS (boot.bin) was built. Use drivers which have been integrated into the kernel.

STARTING PLATFORM PROFILER SERVER CAUSES SERVER CREDENTIALS ERROR: "DATABASE SERVER CREDENTIALS ARE INVALID OR CORRUPTED" (DXET-1990)
Platform Profiler server is unable to connect to the backend of the database due to an unexpected change in database credentials.

To work around this problem:

  • Verify that you have read/write access to the directory where Platform Profiler data is stored.
  • Verify that the Platform Profiler server is not running.
  • Open a Terminal window (Linux) or a Command Prompt window (Windows*) and type the following command:

           $ <vtune install dir>/vpp/server/vpp-server reset-db-credentials

  • Start the Platform Profiler server

DATA COLLECTED WITH PREVIOUS VERSIONS OF PLATFORM PROFILER IS NOT AVAILABLE AFTER UPGRADE TO VTUNE™ PROFILER 2020 (DXET-2014)
Platform Profiler 2020 allows users to choose the location for data storage. Previous versions of Platform Profiler stored the data in these locations:

  • Linux: /opt/intel/vtune-Profiler-platform-profiler/vpp-data
  • Windows: C:\ProgramData\Intel\VTune Profiler Platform Profiler\data

To view the data collected with previous versions of Platform Profiler:

  • Linux: Start the Platform Profiler server with the --data-dir option:

           <vtune install dir>/vpp/server/vpp-server start --data-dir /opt/intel/vtune-Profiler-platform-profiler/vpp-data/

  • Windows: In the Platform Profiler server startup dialog, click the "Browse Directory" button. Select "C:\ProgramData\Intel\VTune Profiler Platform Profiler\data" and then click "Start" to start the sever.

PLATFORM PROFILER IS UNABLE TO UPLOAD RESULTS OR VIEW RESULT DIRECTORIES AND FILES WITH GOOGLE CHROME* VERSION 80 OR LATER (DXET-2045)
Users of Google Chrome* version 80 or later are unable to browse Platform Profiler collected results or upload new result files. Clicking the “View Results” on the Platform Profiler home page displays an empty page.

To work around this problem:

  • In Google Chrome*,
    • Navigate to the “New Results” page.
    • Press F12 to open the Chrome Developer tools.
    • Click and hold the “refresh” toolbar button.
    • Select “Empty Cache and Hard Reload” from the menu.
  • Alternatively, you can also use Mozilla Firefox* or Microsoft* Edge. Platform Profiler is fully functional with Mozilla Firefox* and Microsoft* Edge. However, some some degradation in user experience (e.g. topology diagrams are not fully rendered) is likely.

SIZE LIMITATIONS WHEN UPLOADING DATA COLLECTION RESULTS TO THE PLATFORM PROFILER SERVER (DXET-1200)

The Platform Profiler server currently supports data collection results up to 1GB in size (compressed).

CPU TIME IN EXCESS OF 100% SHOWN FOR INDIVIDUAL THREADS (VASP-21841)
For data collected using the sampling driver on both Windows OS and Linux OS, the timeline may show CPU Time larger than 100% for individual threads, typically for the duration of one sampling interval at a time. This issue is caused by the thread migrating between logical CPUs.

As a workaround, you can switch to hardware sampling with stacks on both Windows OS and Linux OS or use driverless per-process sampling on Linux OS.

PYTHON CODE PROFILING LIMITATION: WHEN COLLECTING DATA IN ATTACH TO PROCESS MODE, PYTHON USER CODE IS NOT SHOWN IN VTUNE SOURCE VIEW FOR PYTHON* 3.6 VERSION AND HIGHER.
The limitation is valid starting from Python* 3.6.

APS TOOL FROM VTUNE PROFILER 2021 PACKAGE LOSES APPLICATION ARGUMENTS

You might observe a problem that Application Performance Snapshot (APS) tool loses application arguments wile starting a data collection.

The issue affects the following versions: Intel® VTune™ Profiler 2020 Update 3, Intel® VTune™ Profiler 2021 Beta Update 10, and future Intel® VTune™ Profiler 2021.

As a workaround you can create a small shell script where to place a command line of the application with parameters and then launch the script from APS tool.

VTUNE PROFILER’S GPU OFFLOAD OR GPU COMPUTE/MEDIA HOTSPOTS ANALYSIS MAY FAIL ON COLLECTING DATA AT ANDROID TARGET DEVICE (VASP-22213)
With GPU Offload or GPU Compute/Media Hotspots analysis types for a target Android device you need to disable the ‘Trace GPU programming APIs’ option. Otherwise the collection will fail with error: ‘Unknown option: --gpu-kernels-to-profile=*#1#1#4294967295’. With command line interface use the ‘collect-programming-api‘ knob to disable this option, for example:

vtune -collect gpu-offload -knob collect-programming-api=false …

CREATING OF MANY ITT API INSTANCES CAN LEAD TO ERROR REPORT THROUGH __ITT_REPORT_ERROR() AND/OR ABSENCE OF ITT API DATA.
To avoid this issue consider using latest ITT API from open source repository.

Windows* Specific Limitations

HW SAMPLING COLLECTION CONFLICT DUE TO WINDOWS DEFENDER VIRUS PROTECTION (DOC-10966)
The hardware sampling based collections (hotspots, uarch exploration, memory access, etc.) won't work correctly if Windows Defender Virus Protection is enabled as it is using the PMU counters for virus detection. In order to load the drivers, the user should also disable Windows Defender.

Steps to disable Windows Defender Real-time Virus Protection:

  1. Search for "Windows Security" and click to open the app.
  2. Click on "Virus & threat protection".
  3. Under the section, click the "Manage settings" option.
  4. Turn off the "Real-time protection" toggle switch to disable Microsoft Defender Antivirus.

Due to the security risk, users should disable Windows Defender at their own discretion.

VTUNE 2020 U1 SHOWS EMPTY WINDOW WHEN A NEW RESULT IS OPENED AFTER SYSTEM AWAKE (VASP-19132)
Open VTune 2020 U1 GUI, open a result, put system on sleep and login back. In VTune GUI, if a new result is opened then it shows an empty window. Workaround for this issue is to restart VTune GUI.

JIT WRITER API CANNOT HANDLE TOO LONG FILE NAMES ON WINDOWS* (VASP-484)
This issue happens when file name of JIT trace file is longer than 260 symbols. VTune™ Profiler is unable to generate a proper result when the result directory has such a long name.

THREAD STACK SIZE LIMITATION (VASP-1808)
VTune™ Profiler may crash with the following error message:
Error: failed to create a sampling thread: not enough storage is available to process this command.

This happens when the profiled application has big reserved and committed thread stack size (/STACK:reserve[,commit] command line switch of link.exe). The suggested workaround is reducing the reserved/committed thread stack size to profile the target.

INCORRECT TIMING RESULTS WHEN RUNNING ON A 32-BIT VIRTUAL MACHINE
VTune™ Profiler may fail to collect correct timing data when running on a virtual machine with problematic virtualization of time stamp counters. In this case the VTune™ Profiler throws a warning message:
Warning: Cannot load data file '<path_to_a_trace_file>.trace' (syncAcquiredHandler: timestamps aren't ascended!)

UNINSTALLING LIMITATION: PIN.EXE STAYS RUNNING AFTER DETACHING.
Once attached to a target, VTune™ Profiler cannot be uninstalled until execution on the target is over. The cause is that pin.exe keeps working after detaching from the target and exits only after the profiled application/process execution finishes.

SECOND ATTACH TO THE SAME APPLICATION SHOULD PRINT AN ERROR AND EXIT IMMEDIATELY
VTune™ Profiler allows you to run an analysis while the previous one is in progress. Howeverm it does not store any data from the second analysis run.

TRUNCATED .NET* MODULE NAMES MAY BE DISPLAYED IN RESULTS VIEW (VASP-3772)
When viewing results collected for a .NET application, you may observe truncated .NET module names. Ensure that the system was rebooted after installing the .NET application and before profiling with the VTune™ Profiler.

.NET MODULES LOADED DYNAMICALLY VIA REFLECTION API ARE DISPLAYED AS "UNKNOWN" HOTSPOTS (VASP-1945)
If dynamic .NET modules (e.g. loaded via Assembly.LoadFrom) are used in target application, VTune™ Profiler will show them as "unknown" functions and modules in hotspots list.

ATTACHMENT AS ADMINISTRATOR TO A PROCESS THAT LAUNCHED BY THE 'SYSTEM' USER FAILS (VASP-476)
You may use a utility from https://learn.microsoft.com/en-us/sysinternals/downloads/psexec to profile a system service (for example, w3wp.exe-based code) from the command line using vtune.exe that is located in <product_install_dir>/bin64. Do the following:

  1. Configure the w3wp service to run with the permissions you use to log in: Open IIS Manager, right-click an application pool you are using and set “Process model:Identity” to the account under which w3wp needs to be run.
  2. Run the w3wp service and make sure you run it with proper credentials and remember its PID.
  3. Start data collection: psexec -i 0 /path/to/vtune.exe -c=hotspots -r /path/for/your/data_dir --target-pid=PID
  4. Run your workload.
  5. Stop data collection: psexec -i 0 /path/to/vtune.exe -command detach -r /path/for/your/data_dir
  6. Open /path/for/your/data_dir in GUI: <product_install_dir>/bin64/vtune-gui /path/to/your/data_dir

LIMITED SUPPORT OF WINDOWS STORE* APPLICATIONS (VASP-531)
VTune™ Profiler supports attaching to Windows Store* applications, but not launching them. Only hardware event-based analysis types are supported.

VTUNE™ PROFILER ANALYSIS MAY FAIL ON MACHINE WITH VERDASYS DIGITAL GUARDIAN* SOFTWARE INSTALLED. (VASP-2701)
User mode sampling and tracing based analysis types (Hotspots, Threading) run from GUI may fail if Verdasys Digital Guardian* software is installed on the machine. However, it is still possible to run the collection from the command line.

You can also use EBS collection with stacks, either from the GUI or command line.

ANALYZED APPLICATION MAY CRASH DURING ANALYSIS IF "SYMANTEC ENDPOINT PROTECTION APPLICATION AND DEVICE CONTROL" SOFTWARE IS INSTALLED (VASP-2286)
The issue may occur with user mode sampling and tracing based analysis types (Hotspots, Threading). Ways to overcome the problem:

  • If user mode sampling and tracing based analysis is needed exclude the analyzed application from the list of monitored applications of "Symantec Endpoint Protection Application and Device Control" software.
  • Use Hotspots analysis with Hardware Event based Sampling and Collect stacks option turned on.

DOCUMENTATION CANNOT BE OPENED IN MICROSOFT INTERNET EXPLORER* 10 ON WINDOWS SERVER* 2012 (DOC-204)
To fix the error, modify security settings in Microsoft Internet Explorer* 10. From Tools > Internet Options > Security, add “about:internet” to the list of trusted sites.

CHILD PROCESS ANALYSIS DOES NOT WORK FOR EBS ANALYSIS TYPES IF PROCESS IS RUN FROM SCRIPT USING START COMMAND (DOC-231)
If a process is started from a batch file by the start command, it does not have original command interpreter as a parent process. So the new process cannot be identified as a child and not profiled. This is true for all Hardware event-based analyses. Possible workarounds:

  • Use user-mode sampling and tracing based analysis types instead
  • Use call command in a batch file instead of start
  • Use "attach to process" collection mode to connect directly to the process of interest

RESULTS MAY CONTAIN PROCESS NAME CUT ON THE 14TH CHARACTER (VASP-2702)
VTune™ Profiler may truncate a lengthy process name at the 14th character in results collected with EBS analysis types with stacks. For example, a result should contain find_hotspots.exe, but contains only find_hotspots.. This is an operating system limitation.

WARNING "UNSIGNED DRIVER" DURING INSTALLATION FOR SEPDRV AND VTSS DRIVERS ON WINDOWS* 7 AND WINDOWS SERVER* 2008 R2 (VASP-234)
VTune™ Profiler hardware event-based sampling drivers (sepdrv.sys and vtss.sys) are signed with digital SHA-2 certificate key for compliance with Windows 10 requirements.

To install the drivers on Windows* 7 and Windows Server* 2008 R2 operating systems, add functionality for the SHA-2 hashing algorithm to the systems by applying Microsoft Security Update 2033929: https://learn.microsoft.com/en-us/security-updates/SecurityAdvisories/2015/3033929?redirectedfrom=MSDN.

STARTING PLATFORM PROFILER CAUSES ERROR: "THE SERVER WAS STARTED FROM AN UNEXPECTED LOCATION" (DXET-2063)
When starting the Platform Profiler server, the server may fail to start and report the following error:

“The server was started from an unexpected location. Please stop this server instance before trying to start the server again”.

This error can happen when the server was previously started from the Windows Command Prompt using the "vpp-server start" command.

To work around this problem:

  • Stop these processes:
    • influx
    • <vtune install dir>/vpp/server/dist/3rdparty/vpp-python/python.exe
  • Restart the Platform Profiler server.


Note that starting the Platform Profiler server from the VTune user interface does not result in this error.

LONG FINALIZATION TIME IF WINDOWS BINARIES ARE BUILT WITH THE “/OPT:ICF” LINKER OPTION (VASP-21607)
Debugging information generated for large (Several hundreds of MBs) binaries built with the “/OPT:ICF” option can contain many overlapping symbols. That can cause two following problems:

  • Long finalization of VTune results (because VTune is not optimized to handle such symbols);
  • Impossibility to distinguish certain symbols because they have the same address range in debug info.

A workaround is to remove the “/OPT:ICF” from linker options.

VTUNE™ PROFILER 2021 TOOLBAR BY DEFAULT IS HIDDEN IN MICROSOFT* VISUAL STUDIO 2019 IDE (VASP-22133)
To enable the toolbar right-click on the Visual Studio toolbar area and check “Intel VTune Profiler”. The VTune Profiler toolbar will appear, but unfortunately, the extension toolbar needs to be enabled on each launch of the IDE.

Alternatively, you can launch VTune Profiler using Menu->Tools->Intel VTune Profiler or from a project context menu.

VTUNE™ PROFILER 2021 IS NOT SUPPORTING A REMOTE COLLECTION WITH VIA PSEXEC, SSH, POWERSHELL UTILITIES ARE NOT SUPPORTED ON WINDOWS PLATFORMS ( VASP-22269)
As a workaround, you can use a Windows Remote Desktop session and collect VTune profiles as on a local machine.

VTUNE™ PROFILER IS NOT ABLE TO RESOLVE DEBUG INFORMATION WHEN AN APPLICATION IS COMPILED WITH THE /DEBUG:FASTLINK OPTION. (VASP-3093)

SOMETIMES VTUNE PROFILER HANGS ON PROCESSING .PDB FILES BUILT WITH /DEBUG:FASTLINK OPTION
To fix this issue, please use the /DEBUG:FULL option instead. For more information, see https://learn.microsoft.com/en-us/cpp/build/reference/debug-generate-debug-info?view=msvc-170

VTUNE™ PROFILER IS REPORTING AN ERROR WHEN CONFIGURING AN ANALYSIS WITH A PROJECT CREATED OR RESULTS STORED IN A BOX DRIVE FOLDER (E.G. C:\USERS\<USER NAME>\BOX ON WINDOWS) (VASP-22392)
A discussion of the problem with Box Drive can be found here: https://support.box.com/hc/en-us/community/posts/1500001146222-Directory-to-Box-drive-is-an-empty-symlink-

A workaround would be to place a project and result files in local folders or other shared drives.

A DPC++ APPLICATION COMPILED WITH OPTIONS THAT PRESERVE DEBUG INFORMATION MAY BE SIGNIFICANTLY SLOWED DOWN WHILE RUNNING ON CPU
To work around this issue, explicitly set an environment variable CL_CONFIG_CPU_NO_DBG_CBK=1 before running the application or profiling it with VTune Profiler.

VTUNE PROFILER DOES NOT SUPPORT DEBUG INFORMATION FOR INLINE FUNCTIONS ON WINDOWS (VASP-24541)
VTune Profiler is unable to read debug information for inline functions when it contains in a PDB file. Consequently, when you profile applications on Windows systems, you may not see source line information for inline functions.

To work around this issue, before you profile an application with VTune Profiler, set the

CL_CONFIG_USE_NATIVE_DEBUGGER environment variable to 0

(CL_CONFIG_USE_NATIVE_DEBUGGER=0)

Linux* Specific Limitations

VTUNE™ PROFILER COLLECTION FAILURE ON LINUX SYSTEMS DUE TO FILE DESCRIPTER LIMIT(VASP-31787) 
VTune collection may fail with the following error on Linux systems for the platforms with very high CPU count such as 512 CPUs.
"vtune: Error: PMU resource(s) currently being used by another profiling tool or process: another PMU collection session may be running
vtune: Collection failed.
vtune: Internal Error"
The failure is due to the Linux open file descriptors limit (default 1024). Increasing it to a higher number will resolve the issue. Before increasing the limit, reload the sampling driver, Please reboot the system in case the driver reload is unsuccessful.:

$ cd <install-dir>/sepdk/src

$ ./rmmod-sep -s

$ ./insmod-sep [-g <preferred group>]

Steps to increase the open file descriptors limit:

  1. Check the open file descriptors limit: ulimit -n
  2. Increase the limit in the /etc/security/limits.conf file. To do this, you must have administrator privilege. Increase the limit by adding or changing these lines (particular numbers are chosen as example):
    * soft nofile 65535
    * hard nofile 65535
  3. Exit the shell and log back in to a new shell for the change to take effect.

NOTE: With administrator privilege, you can set the limit for a specific user. The change should be visible when the user logs in again.

RISK OF DISABLING INDIRECT BRANCH TRACKING(IBT) FOR VTUNE DRIVER MODE COLLECTION (DOC-10643)
The Indirect Branch Tracking hardware feature is momentarily disabled (while loading the drivers) in VTune driver collection mode if the feature is supported and enabled in the hardware and Linux operating system. There is no security impact expected during performance profiling after the drivers are loaded.

CORE DUMP WITH SEP 5.38 ON SOME FreeBSD SERVER CONFIGURATIONS WITH FreeBSD-12.2 AND FreeBSD-12.2-p14 (SEP-5505)

This issue may be caused by sep driver installation failed.

If “kldload sep pax” fails, retry with “kldload sep/sep.ko pax/pax.ko”. 

If “vtune-vars.sh” configures PATH and LD_LIBRARY_PATH to use 32-bit pathnames on a 64-bit system, run “uname -m” and if the output is “amd64”, modify vtune-vars.sh to compare the “uname -m” output from “x86_64” to “amd64” and rerun the “vtune-vars.sh” script.

SOME FEATURES REQUIRE INSTALLING AS ROOT
Most of Intel® VTune™ Profiler profiling features work with a non-root install. Many features work on either a genuine Intel processor or a compatible processor.

Some advanced features that use event-based sampling require the latest OS kernel or sampling driver to be installed. Intel Atom® processors also require this driver for analysis.

To install the driver on a system with a genuine Intel processor, launch the installer as root or ask your system administrator to install the driver later. For information on building and setting up the drivers, see https://www.intel.com/content/www/us/en/docs/vtune-profiler/user-guide/2023-0/sep-driver.html.

SLES 15 MACHINE REBOOTS WHEN STARTING INPUT/OUTPUT ANALYSIS WITH BOTH PERF/SEP (VASP-14205)
When running Input and Output analysis on SUSE* Enterprise Linux (SLES) 15, consider switching to Custom Analysis and turn off page faults collection. This helps prevent a system crash that may happen when kernel trace points for page faults are turned on.

PROXY-RELATED ERRORS WHEN STARTING THE PLATFORM PROFILER SERVER (DXET-1338)
On some systems, starting the server generates the following error:

Malformed Proxy variables. Please set your proxy variables with "http" scheme and restart the PPE server :[Errno socket error] [Errno 10060] A connection attempt failed because the connected party did not properly respond after a period of time, or established connection failed because connected host has failed to respond

To work around this problem:

  1. Remove the following proxy-related environment variables and start the server again: http_proxy, https_proxy, noproxy
  2. Start the server using the following commands:

           $ cd <vtune install directory>/vpp/server

           $ dist/3rdparty/vpp-python/python -m scripts.start --skip-proxy-check

SECURITY-ENHANCED LINUX* IS NOT SUPPORTED
Security-enhanced Linux settings (SELinux) are currently not supported by the VTune™ Profiler and need to be either disabled or set to permissive for a successful tool suite installation. If your Linux distribution has SELinux enabled the following error message will be issued by the installer:

Your system is protected with Security-enhanced Linux (SELinux). We currently support only "Permissive" mode, which is not found on the system. To rectify this issue, you may either disable SELinux by - setting the line "SELINUX=disabled" in your /etc/sysconfig/selinux file - adding "selinux=0" kernel argument in lilo.conf or grub.conf files or make SELinux mode adjustment by - setting the line "SELINUX=permissive" in your /etc/sysconfig/selinux file or ask your system administrator to make SELinux mode adjustment. You may need to reboot your system after changing the system parameters. More information about SELinux can be found at http://www.nsa.gov/selinux/

VTUNE™ PROFILER USER MODE COLLECTION MAY FAIL TO RUN ON UBUNTU* (VASP-3352)
VTune™ Profiler may fail to collect data for Hotspots and Threading analysis types on the Ubuntu operating system. Once a collection is started, this message appears in the output:

Failed to start profiling because the scope of ptrace() system call application is limited. To enable profiling, please set /proc/sys/kernel/yama/ptrace_scope to 0. See the Release Notes for instructions on enabling it permanently.

To work around this problem for the current session, set contents of the /proc/sys/kernel/yama/ptrace_scope sysctl file to 0.

To make this change permanent, set kernel.yama.ptrace_scope value to 0 at /etc/sysctl.d/10-ptrace.conf file using root permissions and reboot the machine.

THREADING ANALYSIS MAY PROVIDE INCORRECT WAIT TIME DATA IF LINUX FUTEXES ARE USED
In certain cases, custom synchronization constructions based on Linux futexes are not detected by the VTune™ Profiler. System libraries may also use such constructions. To ensure Wait time correctness in the Threading analysis, use syscall(SYS_futex, ...) API in your code.

VTUNE™ PROFILER MAY CAUSE KVM GUEST VIRTUAL MACHINE TO CRASH (VASP-3806)
In some cases, when you run Event-Based Sampling analysis on a host machine, a guest KVM virtual machine may experience kernel panic. This happens only if precise events are used, for example, with Microarchitecture Exploration (formerly, General Exploration) analysis type. Upgrade KVM to a newer version; there is a KVM patch that fixes the problem.

SYMBOLS ARE NOT RESOLVED FOR BINARIES REMAPPED WITH HUGTLBFS UTILITY (VASP-707)
hugetlbfs remaps segments from executable file to its temporary file system or to anonymous memory regions. VTune™ Profiler can’t map those segments to the original executable.

The workaround for this problem is to rename the original executable to the one that hugetlb exposes, i.e. the module name that you see in VTune™ Profiler results.

my_exe (original executable) → my_exe_32_2 (file name on hugetlb file system in case of sharing between processes)

my_exe (original executable) → libhugetlbfs.tmp.<random hash> (memory region name in case of anonymous mappings)

RUNNING OTHER PMU-BASED TOOLS SIMULTANEOUSLY WITH HARDWARE EVENT-BASED SAMPLING COLLECTION IS NOT SUPPORTED
The Sampling Driver requires exclusive use of the PMU resources. Running multiple PMU based tools will cause incorrect results and/or system instability.

HOTSPOTS AND THREADING ANALYSIS TYPES MAY NOT WORK ON EXECUTABLES THAT DO NOT DEPEND ON THE LIBPTHREAD.SO.0 LIBRARY
There is currently a limitation in the product regarding profiling application targets where the executable does not depend on the libpthread.so.0 library. The message "Link libpthread.so to the application statically and restart profiling" appears when profiling an application where program image does not depend on libpthread.so.0 but then it dlopen()s a shared library which does depend on libpthread.so.0. The collector is not able to follow the program execution and module load/unload so the collection results are likely to be misleading. A workaround is to set "LD_PRELOAD=libpthread.so.0" before running the collection.

OPENING RESULTS SIGNIFICANTLY DELAYED ON LINUX SYSTEMS CONFIGURED WITH "LARGE PAGES"
To work around this issue make sure that you have hugectl utility and libhugetlbfs library on the system. VTune™ Profiler can be started this way:
hugectrl --heap <vtune install dir>/bin64/vtune-gui
LD_PRELOAD=libhugetlbfs.so <vtune install dir>/bin64/vtune-gui

HELP TOC IS TRUNCATED IN SOME LINUX BROWSERS
When using certain HTML browsers to view the VTune™ Profiler offline documentation, if the Contents tab width appears truncated and hides some of the topic titles:

  • Click the Index (or Search) button
  • Click the Contents button

COLLECTION FAILS WITH ERROR "NO CONFIG_PERF_EVENTS=Y KERNEL SUPPORT CONFIGURED" (DOC-241)

Driverless EBS collection on Linux can fail with the error: "No CONFIG_PERF_EVENTS=y kernel support configured" even if the kernel config has been set. This is a known Linux kernel issue that is resolved in kernel version 4.1. There is a simple patch that provides a workaround: http://halobates.de/ivb-allow-mem-load-uops

USER TASKS, EVENTS AND FRAMES MARKED WITH ITT APIS MAY NOT BE SHOWN IF TARGET APPLICATION IS FINISHED BY CTRL+C (VASP-1367)
Use another method to stop application, or VTune™ Profiler stop command.

WHEN INSTALLING ON A XEN* VIRTUAL MACHINE, IT MAY HAPPEN THAT INSTALLATION SCRIPT EXITS CLAIMING CPU IS UNSUPPORTED
To skip the check for CPU model, add --ignore-cpu parameter to install script command line:
./install.sh --ignore-cpu

VTUNE™ PROFILER HELP DOES NOT OPEN FROM GUI ON SOME LINUX SYSTEMS (VASP-3322)
On some Linux* systems, like Wind River Linux, default ways to open web browser may not work. You may export the environment variable BROWSER (before starting VTune™ Profiler) with the path to the web browser to get VTune™ Profiler help working.

For example:
$ export BROWSER=/usr/bin/firefox

VTUNE™ PROFILER USER APIS ARE NOT SUPPORTED FOR STATIC BINARIES (VASP-2287)
To use ITT and JIT APIs with software-based collectors (Hotspots, Threading), you must link their application dynamically. Otherwise ITT and JIT API notifications will be missing in the result.

VTUNE™ PROFILER TARGET EXECUTABLES DO NOT WORK ON YOCTO PROJECT X64 DUE TO DIFFERENT PATHS TO LD (VASP-8531)
Error message: "-sh: ./amplxe-perrunss: No such file or directory". Usually ld is located in /lib64/ld-linux-x86-64.so.2 but on Yocto x64 it is located in /lib/ld-linux-x86-64.so.2.

The workaround is to create /lib64/ld-linux-x86-64.so.2 as a symlink to /lib/ld-linux-x86-64.so.2.

EVENT-BASED SAMPLING DRIVER FAILS TO BUILD ON YOCTO PROJECT 1.6 INTEL X86_64 BSPS DUE TO MISSING CONFIG_COMPAT #DEFINE IN LINUX KERNEL HEADERS (VASP-1558)
Sampling driver fails to build on Yocto x86_64 BSPs images that do not have “CONFIG_COMPAT=y” setting (https://bugzilla.yoctoproject.org/show_bug.cgi?id=6777)

To resolve the issue, you need to re-build the image with the option manually.

Change kernel configuration according to https://docs.yoctoproject.org/1.6.1/kernel-dev/kernel-dev.html#changing-the-configuration:

  1. Create the compat.cfg file in meta-yocto-bsp/recipes-kernel/linux/files/ directory with content: CONFIG_IA32_EMULATION=y CONFIG_COMPAT=y
  2. Add the following strings to meta-yocto-bsp/recipes-kernel/linux/linux-yocto_3.10.bbappend: FILESEXTRAPATHS_prepend := "${THISDIR}/files:" SRC_URI += file://compat.cfg
  3. Clean and build a modified kernel according to https://docs.yoctoproject.org/1.6.1/dev-manual/dev-manual.html#patching-the-kernel and https://docs.yoctoproject.org/1.6.1/dev-manual/dev-manual.html#build-the-modified-qemu-kernel-image

           $ bitbake linux-yocto -c cleansstate

           $ bitbake -k linux-yocto

  1. Build image:

           $ bitbake core-image-sato

COLLECTING PERFORMANCE DATA FOR INTEL® OPTANE™ PERSISTENT MEMORY (DXET-1844)
If you are using an account with root privileges and you try to collect data on a system enabled with Intel® Optane™ Persistent Memory, this warning appears:

User needs sudo privilege to collect Persistent Memory metrics. Persistent Memory metrics will not be collected.
Use the following command to start data collection with elevated privileges:
sudo <vtune install dir>/vpp/collector/vpp-collect start

Use the following command to stop data collection:
sudo <vtune install dir>/vpp/collector/vpp-collect stop

NOTE: elevated privileges are required to stop a data collection session that was started with elevated privileges.

VTUNE COLLECTION CAN SOMETIMES FAIL REPORTING LIBSTDC++.SO.6 LIBRARY NOT FOUND (VASP-21417)
Due to a known Linux loader bug, VTune collection can sometimes fail when a user had libraries in LD_PRELOAD environment prior to launching VTune collection. The example of how the bug can manifest when having libzet_intercept.so in LD_PRELOAD:

/opt/intel/vtune_profiler_2021.1.0/bin64/pin: /opt/intel/vtune_profiler_2021.1.0/bin64/../lib64/libstdc++.so.6: version `GLIBCXX_3.4.26' not found (required by /lib/x86_64-linux-gnu/libze_loader.so.1)

There are several workarounds for this problem:

  1. Clear LD_PRELOAD before launching VTune and configure LD_PRELOAD as an environment for the target application if it is required.
  2. Add libstdc++.so.6 either from VTune installation or from system location to LD_PRELOAD (see https://www.intel.com/content/www/us/en/docs/vtune-profiler/user-guide/2023-0/error-message-cannot-collect-gpu-hardware-metrics.html that has a similar workaround)
  3. Do 'export LD_PROFILE=none' before launching collection (this could cause an insignificant performance hit for the loader, does not work in security hardened environment)

Any one of these workarounds should solve the problem.

USING A WRAPPER SCRIPT IN VTUNE PROFILER COMMAND MIGHT NOT WORK PROPERLY IF “SUDO -A SU <USER> -C “$*” IS USED IN THE SCRIPT FOR LOCAL CONNECTION. (VASP-22952)
Correct “su” commands are the following:

The command "sudo -A su <user> -c "$*" " works for Remote Linux (SSH) collection.

The command "sudo -A -C 65000 su <user> -c "$*" " works for local (or VTune Server) collection.

UNABLE TO RUN PLATFORM PROFILER ON FEDORA VERSIONS 30 OR NEWER(DXET-2342)
On Fedora versions 30 or newer, Platform Profiler can fail to start. This error message appears:
<vtune-install-dir>/vpp/server/dist/3rdparty/vpp-python/bin/python3: error while loading shared libraries: libcrypt.so.1: cannot open shared object file: No such file or directory Failed to configure Intel(R) VTune(TM) Profiler - Platform Profiler server. Intel(R) VTune(TM) Profiler - Platform Profiler is supported on Ubuntu, CentOS, Debian and RedHat based systems only.

To work around this problem, install the libxcrypt-compat package using the Fedora package manager.

PLATFORM PROFILER IS UNABLE TO COLLECT PERSISTENT MEMORY METRICS FROM SYSTEMS WITH INTEL® OPTANE™ PERSISTENT MEMORY 200 SERIES MODULES (FORMERLY BARLOW PASS) (DXET-2330)
When collecting Platform Profiler data from systems with Intel(R) Optane(TM) Persistent Memory 200 Series Modules (formerly Barlow Pass), you may see this warning:

WARNING: PMWatch was not found. Persistent Memory metrics will not be collected. For more details, see ~/vpp-collect.log" displayed

The VTune error log file contains more information:

WARNING: ipmwatch pre-requisites: Firmware version >= 01.00.00.5142 for PMON functionality 01.00.00.5127 for rest of the functionality ipmctl >= 01.00.00.3296 for PMON functionality 01.00.00.3262 for rest of the functionality ipmctl found on the system: 02.00.00.3457

ipmwatch is not guaranteed to work with versions less than the ones mentioned above.

To work around this issue,

  1. Identify the versions of libipmctl installed on the system:

          $ ls -la /lib64 | grep ipmctl

            lrwxrwxrwx 1 root root 18 Dec 18 12:59 libipmctl.so.3 -> libipmctl.so.3.1.0

            -rwxr-xr-x 1 root root 2525496 Feb 28 2020 libipmctl.so.3.1.0

            lrwxrwxrwx 1 root root 18 May 1 2020 libipmctl.so.4 -> libipmctl.so.4.0.0

            -rwxr-xr-x 1 root root 2562712 May 1 2020 libipmctl.so.4.0.0

  1. Update the link libipmctl.so.3 to point to libipmctl.so.4.0.0

           $ unlink /lib64/libipmctl.so.3

           $ ln -s /lib64/libipmctl.so.4.0.0 /lib64/libipmctl.so.3

           $ ls -l /lib64/ | grep ipmctl

             lrwxrwxrwx 1 root root 25 Apr 22 15:47 libipmctl.so.3 ->/lib64/libipmctl.so.4.0.0

             -rwxr-xr-x 1 root root 2525496 Feb 28 2020 libipmctl.so.3.1.0

             lrwxrwxrwx 1 root root 18 May 1 2020 libipmctl.so.4 -> libipmctl.so.4.0.0

             -rwxr-xr-x 1 root root 2562712 May 1 2020 libipmctl.so.4.0.0

DRIVERLESS PERF BASED COLLECTIONS ON ADL IS SUPPORTED BY LINUX KERNEL SINCE 5.15.5. (VASP-27934)
Driverless Perf based collections on ADL is supported by Linux kernel since 5.15.5. To check if your kernel supports driverless collection on ADL architecture, check for the following device files:
/sys/bus/event_source/devices/cpu_atom
/sys/bus/event_source/devices/cpu_core

macOS* Specific Limitations

NATIVE COLLECTION IS NOT AVAILABLE ON MACOS*
Intel VTune™ Profiler for macOS* supports viewing of results collected on other OSs. Native collection on macOS is not currently available.

SOME SYSTEMS DO NOT SUPPORT CONTEXT-SENSITIVE HELP
On some macOS* systems, such as macOS 10.13, VTune™ Profiler context-sensitive help is not supported.

Previous VTune™ Profiler Releases

VTune Profiler 2022 and Previous Releases:

Attributions

The license information for third party software that was used to develop Intel® VTune™ Profiler can be found in <install_dir>/licensing/third-party-programs.txt .
For the avoidance of doubt, the Intel® VTune™ Profiler is solely governed by the terms and conditions of the End User License Agreement for Intel® Software Development Product that accompanies the Intel® VTune™ Profiler.

Legal Information

No license (express or implied, by estoppel or otherwise) to any intellectual property rights is granted by this document.

Intel disclaims all express and implied warranties, including without limitation, the implied warranties of merchantability, fitness for a particular purpose, and non-infringement, as well as any warranty arising from course of performance, course of dealing, or usage in trade.

This document contains information on products, services and/or processes in development. All information provided here is subject to change without notice. Contact your Intel representative to obtain the latest forecast, schedule, specifications and roadmaps.

The products and services described may contain defects or errors which may cause deviations from published specifications. Current characterized errata are available on request. No product or component can be absolutely secure.

Copies of documents which have an order number and are referenced in this document may be obtained by calling 1-800-548-4725 or by visiting https://www.intel.com/content/www/us/en/resources-documentation/developer.html.

Intel, the Intel logo, Intel Core, Intel Xeon Phi, VTune, and Xeon are trademarks of Intel Corporation in the U.S. and/or other countries.

*Other names and brands may be claimed as the property of others.

Microsoft, Windows, and the Windows logo are trademarks, or registered trademarks of Microsoft Corporation in the United States and/or other countries.

Java is a registered trademark of Oracle and/or its affiliates.

OpenCL and the OpenCL logo are trademarks of Apple Inc. used by permission by Khronos.


Copyright 2010 - 2022 Intel Corporation.

This software and the related documents are Intel copyrighted materials, and your use of them is governed by the express license under which they were provided to you (License). Unless the License provides otherwise, you may not use, modify, copy, publish, distribute, disclose or transmit this software or the related documents without Intel's prior written permission.

This software and the related documents are provided as is, with no express or implied warranties, other than those that are expressly stated in the License.