Intel® VTune™ Amplifier
Intel® VTune™ Amplifier can collect and analyze performance data on embedded Linux* devices. This topic provides an example of setting up Intel VTune Amplifier to collect performance data on an embedded device running Yocto Project*. The first section provides information for a typical use case where the required collectors are automatically installed. The second section provides steps to manually install the collectors and the VTune Amplifier drivers for hardware event-based sampling data collection.
Use the following steps on the host system to set up and launch the analysis on the embedded device:
Set up a password-less SSH access to the target using RSA keys.
Open VTune Amplifier and create a new project.
Select the remote Linux (SSH) analysis target and specify the collection details. VTune Amplifier connects to the target system and installs the appropriate collectors. If the automatic installation fails or if you want to collect hardware event-based sampling with the VTune Amplifier drivers, follow the instructions below to manually configure the target system.
Select the analysis type.
Start the analysis.
Use these steps only if the automatic installation fails.
Copy the target package archive to the target device. The following target packages are available:
<install-dir>/target/vtune_amplifier_target_sep_x86.tgz - provides hardware event-based sampling collector only (SEP) for x86 systems
<install-dir>/target/vtune_amplifier_target_x86.tgz - provides all VTune Amplifier collectors for x86 systems
<install-dir>/target/vtune_amplifier_target_sep_x86_64.tgz - provides hardware event-based sampling collector only (SEP) for 64-bit systems
<install-dir>/target/vtune_amplifier_target_x86_64.tgz - provides all VTune Amplifier collectors for 64-bit systems
For example, the following command copies the vtune_amplifier_target_x86_64.tgz package to the embedded device using SCP:
> scp -r vtune_amplifier_target_x86_64.tgz root@123.45.67.89:/opt/intel/
Extract the file on the target system. For example:
> tar -xvsf vtune_amplifier_target_x86_64.tgz
Make sure the sampling driver is available on the target system. The installation output should inform you if building the sampling driver is required. If it is not, you will need to build the sampling driver and install it on the target system.
If the compiler toolchain is available on the target embedded system, build the driver on the target device using the following steps:
Open a command prompt and navigate to the <install-dir>/sepdk/src directory. For example:
> cd /opt/intel/vtune_amplifier_2019.0.0.0/sepdk/src
Build the driver using the ./build-driver command. For example:
> ./build-driver -ni \ --kernel-src-dir=/usr/src/kernel/ \ --kernel-version=4.4.3-yocto-standard \ --make-args="PLATFORM=x64 ARITY=smp"
If the compiler toolchain is not available on the target embedded system, build the driver on the host system and install it on the target device using the following steps:
Open a command prompt and navigate to the <install-dir>/sepdk/src directory. For example:
> cd /opt/intel/vtune_amplifier_2019.0.0.0/sepdk/src
Cross-build the driver using the using the ./build-driver command. Provide the cross-compiler (if necessary) and the target kernel source tree for the build. For example:
> mkdir drivers
>./build-driver -ni \
--c-compiler=i586-i586-xxx-linux-gcc \
--kernel-version=4.4.3-yocto-standard \
--kernel-src-dir=/usr/src/kernel/ \
--make-args="PLATFORM=x32 ARITY=smp" \
--install-dir=./drivers