User Guide

Intel® VTune™ Profiler User Guide

ID 766319
Date 11/07/2023
Public

A newer version of this document is available. Customers should click here to go to the newest version.

Document Table of Contents

Sampling Drivers

Intel® VTune™ Profiler uses kernel drivers to enable the hardware event-based sampling. VTune Profiler installer automatically uses the Sampling Driver Kit to build drivers for your kernel with the default installation options. If the drivers were not built and set up during installation (for example, lack of privileges, missing kernel development RPM, and so on), VTune Profiler provides an error message and, on Linux* and Android* systems, enables driverless sampling data collection based on the Linux Perf* tool functionality, which has some analysis limitations for a non-root user. VTune Profiler also automatically uses the driverless mode on Linux when hardware event-based sampling collection is run with stack analysis, for example, for Hotspots or Threading analysis types.

If not used by default, you may still enable a driver-based sampling data collection by building/installing the sampling drivers for your target system:

  • Windows* targets: Verify the sampling driver is installed correctly. If required, install the driver.

  • Linux* targets:

    • Make sure the driver is installed.

      • Build the driver, if required.

      • Install the driver, if required.

    • Verify the driver configuration.

  • Android* targets: Verify the sampling driver is installed. If required, build and install the driver.

NOTE:

  • You may need kernel header sources and other additional software to build and load the kernel drivers on Linux. For details, see the README.txt file in the sepdk/src directory.

  • A Linux kernel update can lead to incompatibility with VTune Profiler drivers set up on the system for event-based sampling (EBS) analysis. If the system has installed VTune Profiler boot scripts to load the drivers into the kernel each time the system is rebooted, the drivers will be automatically re-built by the boot scripts at system boot time. Kernel development sources required for driver rebuild should correspond to the Linux kernel update.

  • If you loaded the drivers but do not use them and no collection is happening, there is no execution time overhead of having the drivers loaded. The memory overhead is also minimal. You can let the drivers be loaded at boot time (for example, via the install-boot-script, which is used by default) and not worry about it. Unless data is being collected by the VTune Profiler, there will be no latency impact on system performance.