Performance Profiling and Analysis Tools
From SubfireWiki
Contents |
Profiling Tools
Sysprof
Sysprof is a "system wide" profiler: a sort of highly detailed system monitor, so it's possible to see which function in which application is using substantial amount of CPU. It appears to only provide data at the function call timing level.
SystemTap
SystemTap provides a way to access a variety of kernel-level information in a system-wide way. It defines a scripting language which causes its kernel module to collect and report information about a live system. Scripts are translated to C and compiled into kernel modules.
To use SystemTap on Ubuntu, follow these (simple) directions.
OProfile
OProfile allows the collection of an array of low level runtime data. It can generate annotated source files with embedded timing data and provides access to the low level data collected by the CPU (cache hit ratio and load blocks, TLB misses).
GProf
Valgrind
KCacheGrind
JProf
Linux Trace Toolkit
Processor Simulators/Virtual Machines
PTLSim
SimpleScalar
Xen
XenoProf - some oprofile tools for Xen
Analysis Tools
TPTP
Ideas
Integrative Tools
- Integrate analysis better with source
- Integrate collection better with analysis
- Integrate collection better with desktop (for end users to submit profiles to developers proving problems)
Handheld Tools
- Collection/analysis in simulators for developers
- On-device profile collection
