| |
- CreateSymFs(device, symfs_dir, libraries, use_symlinks=True)
- Creates a symfs directory to be used for symbolizing profiles.
Prepares a set of files ("symfs") to be used with profilers such as perf for
converting binary addresses into human readable function names.
Args:
device: DeviceUtils instance identifying the target device.
symfs_dir: Path where the symfs should be created.
libraries: Set of library file names that should be included in the symfs.
use_symlinks: If True, link instead of copy unstripped libraries into the
symfs. This will speed up the operation, but the resulting symfs will no
longer be valid if the linked files are modified, e.g., by rebuilding.
Returns:
The absolute path to the kernel symbols within the created symfs.
- GetPerfhostName(*args, **kwargs)
- GetRequiredLibrariesForPerfProfile(profile_file)
- Returns the set of libraries necessary to symbolize a given perf profile.
Args:
profile_file: Path to perf profile to analyse.
Returns:
A set of required library file names.
- GetRequiredLibrariesForVTuneProfile(profile_file)
- Returns the set of libraries necessary to symbolize a given VTune profile.
Args:
profile_file: Path to VTune profile to analyse.
Returns:
A set of required library file names.
- GetToolchainBinaryPath(library_file, binary_name)
- Return the path to an Android toolchain binary on the host.
Args:
library_file: ELF library which is used to identify the used ABI,
architecture and toolchain.
binary_name: Binary to search for, e.g., 'objdump'
Returns:
Full path to binary or None if the binary was not found.
- PrepareDeviceForPerf(device)
- Set up a device for running perf.
Args:
device: DeviceUtils instance identifying the target device.
Returns:
The path to the installed perf binary on the device.
|