HP Caliper User's Guide
On Linux, HP Caliper has been primarily validated with code produced with gcc and
g++, and minimally tested with code produced from the Intel icc compiler.
HP Caliper can generally be used on:
• Programs compiled using HP, Intel, and GNU compilers, with and without
optimization.
• Assembly and Java programs.
• Stripped programs, and programs compiled with optimization or debug
information or both. This includes support for both the +objdebug and
+noobjdebug options.
• Both ILP32 (+DD32) and LP64 (+DD64) programs, both 32-bit and 64-bit ELF
formats.
• Archive-, minshared- or shared-bound executables.
• Single-process and multiprocess applications.
• Single-threaded and multithreaded applications, including MxN threads.
• Applications that fork or vfork or exec themselves or other executables.
• Shell scripts and the programs they spawn.
• Main, static, and dynamic shared libraries.
• Entire run, partial run, and server/daemon programs.
Summary of HP Caliper Features
HP Caliper's most important features include the following:
• Performance data is automatically saved in databases, which you can use to
generate reports without having to remake the measurements. Multiple databases
can also be combined for aggregated results.
• All reports are available in text format and comma-separated-value (CSV) format
for use with spreadsheets.
• The HP Caliper GUI can be used to set up measurements, initiate measurement
runs, and interactively explore collected performance data.
• Performance data can be correlated to your source program by line number.
• You can include or exclude specific load modules, such as libc, when measuring
performance.
• Both per-thread and aggregated thread reports are available for most
measurements.
• Performance data can be reported by function, sorted to show hot spots.
• You can perform per-process and system-wide measurements, for user or kernel
space. The system-wide measurement data can be attributed to the kernel,
processes, or processes and modules, or not attributed.
• Multiprocess selection capabilities are provided.
• Limited support for dynamically generated code is provided.
26 HP Caliper at a Glance