- 2
- 0
- 约 5页
- 2016-02-01 发布于江苏
- 举报
性能查看工具Oprofile使用.doc
Linux性能分析工具
——gprof和Oprofile
简介
为了分析程序的性能,找出系统性能瓶颈点,有必要用相应的性能分析工具对系统的性能进分析。Linux上常用的性能分析工具有gprof和oprofile。
Gprof一般用于对用户态的程序进行简单分析
Oprofile 功能较强大适合于对复杂系统的分析
GGprof的介绍
gprof是GNU工具之一,它在编译的时候在每个函数的出入口加入了profiling的代码,运行时统计程序在用户态的执行信息,可以得到每个函数的调用次数,执行时间,调用关系等信息,简单易懂。适合于查找用户级程序的性能瓶颈,对于很多时间都在内核态执行的程序,gprof不适合。Gprof的安装与使用
gprof是gnu binutils工具之一,默认情况下linux系统当中都带有这个工具。–g –pg –o hello hello.c
运行hello,在当前目录下会产生gmon.out文件
结果分析一般有三种方式
gprof hello gmon.out -p 得到每个函数占用的执行时间
gprof hello gmon.out -q 得到call graph,包含了每个函数的调用关系,调用次数,执行时间等信息。
gprof hello gmon.out -A 得到一个带注释的“源代码清单”,它会注释源码,指出每个函数的执行次数。这需要在编译的时候增加 -g选项。profile也是一个开源的profiling工具,它使用硬件调试寄存器来统计信息,进行profiling的开销比较小,而且可以对内核进行profiling。它统计的信息非常的多,可以得到cache的缺失率,memory的访存信息,分支预测错误率等等,这些信息 gprof是得不到的,但是对于函数调用次数,它是不能够得到的。
Oprofile可以帮助用户识别诸如循环的展开、高速缓存的使用率低、低效的类型转换和冗余操作、错误预测转移等问题。它收集有关处理器事件的信息,其中包括TLB的故障、停机、存储器访问、位于 DCU(数据高速缓存单元)中的总线路数、一个 DCU 故障的周期数,以及不可高速缓存的和可高速缓存的指令的获取数量。Oprofile是一种细粒度的工具,可以为指令集或者为函数、系统调用或中断处理例程收集采样。Oprofile 通过取样来工作。使用收集到的评测数据,用户可以很容易地找出性能问题。
Oprofile的安装
Oprofile的运行需要一个内核态module和一个用户态的daemon程序。对于Linux2.6.x的内核已经集成了该module。
在安装oprofile之前,通过命令:
cat /boot/config-`uname -r` | grep OPROFILE
查看内核包含了oprofile模块,如果出现
CONFIG_HAVE_OPROFILE=yCONFIG_OPROFILE=m
这表示打开了OPROFILE,而且oprofile被编译成了一个module
CONFIG_HAVE_OPROFILE=yCONFIG_OPROFILE=m
表示支持OPROFILE,而且oprofile被编译进了内核
如果系统已经打开了oprofile,则不需要重新编译内核
下载oprofile软件包,并用tar解压
./configure --with-linux=/usr/src/linux/ --with-qt-dir=/usr/lib/qt/ --with-kernel-support
make
make installoprofile 安装完成后会生成以下工具集:
/usr/bin/oprofiled 守护进程
/usr/bin/opcontrol 控制前端,负责控制与用户交互,用得最多
/usr/bin/opannotate 根据搜集到的数据,在源码或者汇编层面上注释并呈现给用户
/usr/bin/opreport 生成二进制镜像或符号的概览
/usr/bin/ophelp 列出 oprofile 支持的事件
/usr/bin/opgprof 生成 gprof 格式的剖析数据
opstack : 产生调用图 profile ,但要求 x86/2.6 的平台,并且 linux2.6 安装了 call-graph patch oparchive : 将所有的原始数据文件收集打包,可以到另一台机器上进行分析。
op_import : 将采样的数据库文件从另一种 abi 转化成本地格式。
Oprofile使用
初始化 Sudo opcontrol --init
该命令会加载 oprofile.ko 模块, mount oprofilefs 成功后会在 /dev/oprofile/ 目录下导出些文件和目录如: cp
您可能关注的文档
- 中央投资编报软件填写说明.doc
- 中学新课程微型化学实验探索和实践(浙江台州朱恩等).doc
- 中小学教师如何搞好科研.doc
- 中心组学习汇报.doc
- 中心镇建设交流材料.doc
- 中考历史复习资料:世界资本主义经济政治发展史.doc
- 中考模拟.jsp.doc
- 中考语文·标点符号专题.doc
- 中药治疗缺血性疾病依据和现代药物的研究.ppt
- 临泽县农产品流通情况调查和思考.doc
- JJG 543-2026心电图机检定规程.pdf
- 《JJG 543-2026心电图机检定规程》.pdf
- GB/T 47045-2026乘用车车载信息优先级的确定方法.pdf
- 《GB/T 12668.2-2025调速电气传动系统 第2部分:一般要求 交流调速电气传动系统额定值的规定》.pdf
- 中国国家标准 GB/T 12668.2-2025调速电气传动系统 第2部分:一般要求 交流调速电气传动系统额定值的规定.pdf
- 中国国家标准 GB/T 31487.1-2025直流融冰装置 第1部分:系统设计.pdf
- GB/T 12668.2-2025调速电气传动系统 第2部分:一般要求 交流调速电气传动系统额定值的规定.pdf
- GB/T 31487.1-2025直流融冰装置 第1部分:系统设计.pdf
- 《GB/T 31487.1-2025直流融冰装置 第1部分:系统设计》.pdf
- 《GB/T 31418-2025道路交通信号控制系统术语》.pdf
原创力文档

文档评论(0)