Note
Remote analysis on Android* systems is supported in the Intel® VTune™ Amplifier for Systems, part of the Intel® System Studio.
For hardware event-based sampling analysis and Intel® Energy Profiler analysis, the VTune Amplifier needs sampling and power drivers to be installed.
Note
If the sampling driver cannot be installed with the product installation, the VTune Amplifier automatically enables a driverless sampling event-based data collection with a limited scope of analysis options.
For details on building and installing drivers for Power analysis with the Intel Energy Profiler, see the collateral documentation for Intel SoC Watch/WuWatch command line tools.
On some versions of Android systems, including most of the Intel supplied reference builds for SDVs, the required drivers are pre-installed in /lib/modules
or /system/lib/modules
. If the drivers are not pre-installed in any of these directories, you need to build them manually from the command line. Optionally, you can get the drivers integrated into the Android build so that they are built and installed when the operating system is built.
Android requires signed drivers. Every time the Android kernel is built, a random private/public key is generated. Drivers must be signed with the random private key to be loaded. The drivers (pax.ko
, sep3_10.ko
, and vtsspp.ko
) must be signed with the same key and be compiled against the same kernel headers/sources as what is installed on the Android target system.
VTune Amplifier has options for building a new driver on the Linux host system and installing it on a target Android system. This is not the default and will only work if you provide the proper kernel headers/sources and a signing key. For example, the VTune Amplifier uses the --with-drivers
option for building PMU drivers and --kernel-src-dir
option for providing the configured kernel headers/sources tree path.
To build the sampling drivers on the host Linux system, enter:
<install-dir>/bin{32,64}/amplxe-androidreg.sh --package-command=build --with-drivers --kernel-src-dir=/ path /to/configured/kernel/sources [--jitvtuneinfo=jit|src|dex|none]
where default <install-dir>
is /opt/intel/system_studio_<version>/vtune_amplifier_<version>_for_systems
.
To install the sampling drivers from the Linux host, enter:
<install-dir>/bin{32,64}/amplxe-androidreg.sh --package-command=install --with-drivers --kernel-src-dir=/ path/to/configured/kernel/sources [--jitvtuneinfo=jit|src|dex|none]
To sign the drivers after the drivers are built:
Typically the VTune Amplifier for Systems automatically signs drivers if kernel sources with the keys are available when it builds the drivers. Otherwise, to manually sign the drivers, use the following command:
$KERNEL_SRC/source/scripts/sign-file CONFIG_MODULE_SIG_HASH $KERNEL_SRC/signing_key.priv $KERNEL_SRC/signing_key.x509 driver.ko
where the CONFIG_MODULE_SIG_HASH
value is extracted from the $KERNEL_SRC/.config
file.
Note
You need the "exact" signing key that was produced at the time and on the system where your kernel was built for your target.