Oprofile
适用于分析内核跟应用
Perf
适用于分析kernel
代码路径:
kernel-3.18/tools/perf
systrace
Android显示性能,可以看到每帧的情况
traceview:
Android Java层的性能
Ftrace
适用于分析内核
lttng
systemtap
cpufreq-bench
代码路径:
kernel-3.18/tools/power/cpupower
aprof:
PowerTop
smem:
kernbench
kernbench是CPU性能基准测试工具。它的设计比较在同一台机器,或比较硬的内核。它运行在内核编译兼职不同数量:1 / 2数量的CPU,优化(默认值是CPU的4xnumber)和最大工作计数。可选它也可以运行单线程。然后打印出的每一组的平均运行有用的统计数
lmbench:
lmbench
官方网址
Lmbench 是一套简易可移植的,符合ANSI/C 标准为UNIX/POSIX 而制定的微型测评工具。一般来说,它衡量两个关键特征:反应时间和带宽。Lmbench 旨在使系统开发者深入了解关键操作的基础成本。
代码编译
tar zxvf lmbench3.tar.gz
cd lmbench3
make
cd src && make
make[1]: Entering directory `/home/user4/tools/lmbench3/src'
make[2]: Entering directory `/home/user4/tools/lmbench3/src'
make[2]: *** No rule to make target `../SCCS/s.ChangeSet', needed by `bk.ver'. Stop.
make[2]: Leaving directory `/home/user4/tools/lmbench3/src'
make[1]: *** [lmbench] Error 2
make[1]: Leaving directory `/home/user4/tools/lmbench3/src'
make: *** [build] Error 2
编译出错解决方法
删除 src/Makefile 231行 bk.ver
Memory分析
valgrind
Dtrace:适用于分析内核跟应用。
参考文档
Linux Performance
Linux kernel profiling with perf
perf: Linux profiling with performance counters
RobertoVitillo_FutureTech_EDI.pdf