User Guide

Contents

Configure Yocto Project* and
VTune
Profiler
with the Integration Layer

Intel® VTune™
Profiler
can collect and analyze performance data on embedded Linux* devices running Yocto Project*. This topic provides an example of setting up the
VTune
Profiler
to collect performance data on an embedded device with Yocto Project 1.8 installed using the
Intel VTune
Profiler
integration layer provided with the product installation files. The process integrates the
VTune
Profiler
product drivers with the target package and includes them in the embedded device image. Root access to the kernel is required.
VTune
Profiler
is able to collect some performance data without installing the
VTune
Profiler
drivers. To collect driverless event-based sampling data, installing the drivers and root access is not required. For full capabilities, install the
VTune
Profiler
drivers as described here.

Select the Target Package

VTune
Profiler
provides two Yocto Project recipes in the following packages:
  • The
    vtune_
    profiler
    _target_sep_x86_64.tgz
    package includes the
    intel-vtune-sep-driver
    recipe, which enables performance data collection using hardware event-based sampling. Attempting to collect stacks when using this recipe will automatically switch to driverless collection mode. This recipe has minimal requirements for Linux kernel configuration.
  • The
    vtune_
    profiler
    _target_x86_64.tgz
    package includes the
    intel-vtune-drivers
    recipe, which enables the full performance data capabilities using hardware event-based sampling. This recipe has additional requirements for Linux kernel configuration. The
    intel-vtune-drivers
    recipe is a superset of the
    intel-vtune-sep-driver
    recipe.
Only one recipe can be used at a time. There is no difference between the
x86
and
x86_64
target packages for building recipes within Yocto Project. Both can be used on either 32 bit or 64 bit systems.
  1. Download the
    VTune
    Profiler
    target package or locate the package in the
    <install-dir>
    /target/linux
    directory on the host system where
    VTune
    Profiler
    is installed.
  2. Copy the selected target package to a location on the Yocto Project build system.

Prepare the Integration Layer

  1. On the Yocto Project build system, extract the
    vtune_
    profiler
    _target_sep_x86_64.tgz
    or
    vtune_
    profiler
    _target_x86_64.tgz
    archive to a writeable location.
    cd $HOME tar xvzf vtune_
    profiler
    _target_x86_64.tgz
  2. (Optional) Modify the
    $HOME/vtune_
    profiler
    _
    <version>
    /sepdk/vtune-layer/conf/user.conf
    file to specify user settings.
    1. If the
      VTune
      Profiler
      recipe has been split from the target package, specify one of the following paths:
      • Path to unzipped target package:
        VTUNE_TARGET_PACKAGE_DIR = "$HOME/vtune_
        profiler
        _
        <version>
        "
      • Path to
        VTune
        Profiler
        :
        VTUNE_
        PROFILER_2020
        _DIR = "/opt/intel/vtune_
        profiler
        "
    2. To integrate the SEP driver during system boot, specify
      ADD_TO_INITD = "y"
      .
  3. In the Yocto Project development environment, add the path to the layer to the
    bblayer.conf
    file. For example:
    vi conf/bblayers.conf BBLAYERS = "$HOME/vtune_
    profiler
    _<version>/sepdk/vtune-layer\"
    Your file should look similar to the following:
    BBLAYERS ?= " \ $HOME/source/poky/meta \ $HOME/source/poky/meta-poky \ $HOME/source/poky/meta-yocto-bsp \ $HOME/source/poky/meta-intel \ $HOME/vtune_
    profiler
    /sepdk/vtune-layer \ "
  4. Specify the
    Intel VTune
    Profiler
    recipe in
    conf/local.conf
    . In this example, the
    intel-vtune-drivers
    is used.
    vi "conf/local.conf" IMAGE_INSTALL_append = " intel-vtune-drivers"
    You cannot add both
    intel-vtune-drivers
    and
    intel-vtune-sep-driver
    at the same time.

Build and Flash the Target Operating System

  1. Build the target operating system. For example:
    bitbake core-image-sato
    If you modified the kernel configuration options, make sure the kernel is recompiled.
  2. Flash the operating system to the embedded device.

Configure and Run Remote Analysis

Use the following steps on the host system to set up and launch the analysis on the embedded device:

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