Quick Start Guide

For information on open
positions or to submit your
resume, please visit our Web
site at:
www.lucernepublishing.com
Getting Performance Advice
$ caliper ecount myapp
$ caliper fprof myapp
$ caliper advise
collect and save initial data; generate advice on collected
data and possible next steps
Specifying cpu Event Sets
(for cpu measurement; not available on Linux)
-m overview broad overview of CPU (includes
event sets: cpi, stall,
dispersal, l1icache,
l1dcache, l2cache, tlb, fp)
-m overview:kernel
restrict overview to execution in
kernel space
-m brpath branch types, path distributions,
branches per instructions, …
-m brpred branch prediction effectiveness
-m c2c cache coherence activity
-m cpi cycles per instruction
-m cpubus central electronics complex
(CEC) traffic and CPU interaction
-m cspec control speculation effectiveness
-m dispersal parallelism at instruction
dispersal
-m dspec data speculation effectiveness
-m fp floating-point operation density,
execution rate, and flush/trap
events density
-m l1dcache L1 data cache miss rates
-m l1icache L1 instruction cache miss and
prefetch information
-m l2cache L2 unified cache miss rates
-m l2dcache L2 data cache miss rates
(dual-core Itanium 2 only)
-m l2icache L2 instruction cache miss rates
(dual-core Itanium 2 only)
-m l3cache L3 unified cache miss rates
-m queues bus request queue information
-m replay cycles lost due to instruction
replays
(Intel® Itanium® 9500
processors only)
-m stall CPU performance limiters
-m sysbus system bus utilization
-m threadswitch impact of HyperThreading
(dual-core Itanium 2 only)
-m tlb translation lookaside buffer
(TLB) misses
Specifying CPU Event Privilege Levels
(--scope process, the default, assumed)
-m CPU_CYCLES:user count CPU_CYCLES events
that occur in user space
-m CC:k count CPU_CYCLES that occur
in kernel space
-m cpi:all record CPI for both user and
kernel space (cpu
measurement)
-s ,,CC:all sample on CPU_CYCLES in
both user and kernel space
--event-defaults kernel
--ev k set default privilege level to
kernel for all events
Choosing CPU Events
(summed across run for ecount, fprof, pmu_trace,
{d|i}cache, {d|i}tlb, branch)
-m event count event events
-m event,event2,… count multiple events
Controlling Amount of Data Reported
--summary-cutoff 2
--su 2 in Function Summary section,
only report functions responsible
for 2 percent or more of data
--su 1,80
only report functions responsible
for 1% or more of data; stop
reporting functions when the
cumulative percentage is at 80%
--detail-cutoff 10
--de 10 in Function Details section,
only report functions responsible
for 10 percent or more of data
--report-details none
-r none do not include Function Details
section in report
-r all show source statements and
disassembly in Function Details
--context-lines 1,3
--co 1,3 report 1 extra source line before
and after source lines with data;
report 3 extra instructions before/
after each instruction with data
--process-cutoff 5
--process-cut 5 in Process Summary section,
only report processes respon-
sible for >=5 percent of data
--db-save save module information so
reports can be generated when
modules are not present
--dcache-data-profile
causes the dcache
measurement to create a data
summary report that reports global
variables and process regions
associated with dcache misses
--report-hotpaths When true, adds hot call paths
section to call graph reports
Finding Source Files, Libraries, Executables
(for use in symbol, source, and disassembly reporting)
--module-search-path dir1:dir2
search for libraries and
executables in dir1, then dir2
--module-s dir1:dir2
search dir1, dir2 (short form)
--source-path-map dir1:dir2
--sou dir1:dir2 search for source files in dir1,
then dir2
--sou /work,/net/work
replace /work with /net/work in source file
paths when searching for source files
Selecting Measurement Duration
-e secs collect data for secs seconds (default: collect
until all measured processes exit or SIGINT)
Reporting Threads
--threads all report per-thread data; (default)
--threads sum-all no per- thread data
--threads merge merges data for threads having
same thread starter function name
Specifying Location of Kernel
(for use in symbol and disassembly reporting)
--kernel-path /tmp/vmlinux
--k /tmp/vmlinux kernel path is /tmp/vmlinux
(unzipped copy of Linux kernel)
Collecting Memory Usage Data
(for any measurement; not available on Linux)
--memory-usage begin:end
measure at start and end of run
--mem b:e measure at start/end (short form)
--mem timed:10s measure every 10 seconds
--mem timed:1m measure every minute
--mem all measure once a second and at
start and end of run
Specifying HP Caliper Options in a Text File
-f optionsFile read HP Caliper options from the
text file called optionsFile