oprofile】的更多相关文章

ubuntu上要编译安装oprofile.现在版本(0.9.9)的oprofile的编译需要binutil-dev libpopt-dev apt-get install binutil-dev libpopt-dev 然后./configure make make install 安装完以后 1.执行opcontrol --init启动加载oprofile模块 2.opcontrol --no-vmlinux 3.(可选)opcontrol --event=L2_CACHE_MISS:500…
一.原理 在关注事件发生一定次数时,进行一次采样,记录下需要的信息(比如指令寄存器或栈寄存器信息). 二.参数 项 说明 eventname   要关注的事件名称,常用的事件名称及功能如下:   CPU_CLK_UNHALTED(Clock cycles when not halted),就是CPU时钟: CPU的执行时间,性能测试时最常用的事件   LLC_MISSES: L2 cache失效情况. DTLB_MISSES: 数据TLB失效情况.   一般做性能测试时只会用到CPU_CLK_U…
OProfile 性能分析工具 官方网站:http://oprofile.sourceforge.net/news/ oprofile.ko模块本文主要介绍Oprofile工具,适用系统的CPU性能分析,最主要它能深入内核函数,这是很多用户态工具达不到的地方. Oprofile是一个内核态工具,通过oprofile.ko模块内核模块来获取数据需要在加载oprofile.ko模块的时候,传递”timer=1″参数. modprobe oprofile timer=1 oProfilehttp://…
oProfile工具可以分析CPU的负载量 只要对目标程序加上 -g 后重新编译,即可用oProfile进行分析 例如在测试apache的性能时, 增加 -g 编译选项[crifan@localhost lrzsz-0.12.20]$ CFLAGS=-g ./configure 问题:opcontrol --start失败解决办法[root@mysqlmaster03 boot]# opcontrol –deinit[root@mysqlmaster03 boot]# echo 0 > /pro…
You can get Oprofile RPM from https://www.rpmfind.net/ How to use Oprofile tools: Get report Steps: opcontrol --init //加载模块,mout /dev/oprofile 创建必需的文件和目录 opcontrol --no-vmlinux opcontrol --reset //清除当前会话中的数据 opcontrol --start //开始profiling 运行应用程序(tes…
安装oprofile,然后加载内核模块.#modprobe oprofile,模块加载后开始使用oprofile. 1. 首先设置监视内核,使用debuginfo提供的内核,/boot下面的内核无法使用 #opcontrol --vmlinux=/usr/lib/debug/boot/vmlinux-xxxxx 如果不需要监视内核 #opcontrol --no-vmlinux 2. 启动oprofile #opcontrol --start 3. 运行被监视的应用 # program run…
http://blog.csdn.net/wlsfling/article/details/5876134http://www.lenky.info/archives/2012/03/1371http://blog.chinaunix.net/uid-361890-id-276370.htmlhttp://www.ibm.com/developerworks/cn/linux/l-oprof/ oprofile:yum install oprofile 1.opcontrol --init 2.…
本文分别尝试了oprofile在x86平台和龙芯平台上的安装 一:oprofile的安装与配置(intel+ubuntu12.04) I. Oprofile 安装 Oprofile 包含在 Linux 2.6 版本的内核中,是用于 Linux 的若干种评测和性能监控工具中的一种. 也可从官方网站下载源码进行编译安装:具体安装步骤: 1. ./configure –with-kernel-support 注:在编译过程中,这一步出现的问题是: ( 1 )缺少 libiberty.h 头文件 ; (…
在Debian下安装Oprofile 重要:应该使linux内核选项支持 在 .config 文件中设置CONFIG_PROFILING=y和CONFIG_OPROFILE=y. 重新编译,烧写.使用apt-get update && apt-get install oprofile oprofile-gui 或手工安装直接从网上下载oprofile-0.9.8. Oprofile默认需要这些库的支持: 由GNUmaintain的libbfd.so及libiberty.so 编译和安装最新…
根据CPU架构oprofile采样的触发有两种模式:1) NMI模式: 利用处理器的performance counter功能, 指定counter的类型type和累进数量count. 比如 type=DTLB_MISS, count=500, 代表"Data TLB miss"每发生500次, 会触发一次中断. Oprofile.ko模块会相应这个中断, 然后看当前正在执行的是什么指令,那个函数, 那个模块(或者app, lib), 并进行计数. 不同的处理器支持的counter类型…
一.内核编译选项 make menuconfig General setup---> [*] Profiling support <*> OProfile system profiling 二.popt移植 下载源码:http://rpm5.org/files/popt/    popt-1.16.tar.gz 解压缩后,在popt-1.16当前目录下,新建build.sh,编辑内容如下: ---------------------------------------分割线-------…
为了更好的优化程序性能,我们必须找到性能瓶颈点,“好钢用在刀刃上”才能取 得好的效果,否则可能白做工作. 为了找到关键路径,我们可以使用profilng技术,在linux平台上,我们可以使用gprof和oprofile工 具. gprof是GNU工具之一,它在编译的时候在每个函数的出入口加入了profiling的代码,运行时统计程序在用户态的 执行信息,可以得到每个函数的调用次数,执行时间,调用关系等信息,简单易懂.适合于查找用户级程序的性能瓶颈,对于很多时间都在内核态执行的程 序,gprof不…
oprofile利用cpu硬件层面提供的性能计数器(performance counter),通过计数采样,帮助我们从进程.函数.代码层面找出占用cpu的"罪魁祸首". 常用命令 使用oprofile进行cpu使用情况检测,需要经过初始化.启动检测.导出检测数据.查看检测结果等步骤,以下为常用的oprofile命令. 初始化 opcontrol --no-vmlinux : 指示oprofile启动检测后,不记录内核模块.内核代码相关统计数据 opcontrol --init : 加载…
一.简介 oProfile是Linux平台上的一个功能强大的性能分析工具,支持两种采样(sampling)方式:基于事件的采样(eventbased)和基于时间的采样(timebased),它可以工作在不同的体系结构上,包括MIPS.ARM.IA32.IA64和AMD.   二.安装 1)打开内核OPROFILE选项,否则运行oProfile将提示: [root@localhost oprofile-]# opcontrol --init FATAL: Module oprofile not f…
引言 cpu无端占用高?应用程序响应慢?苦于没有分析的工具? oprofile利用cpu硬件层面提供的性能计数器(performance counter),通过计数采样,帮助我们从进程.函数.代码层面找出占用cpu的"罪魁祸首".下面我们通过实例,了解oprofile的具体使用方法. 常用命令 使用oprofile进行cpu使用情况检测,需要经过初始化.启动检测.导出检测数据.查看检测结果等步骤,以下为常用的oprofile命令. 初始化 opcontrol --no-vmlinux …
引言 cpu无端占用高?应用程序响应慢?苦于没有分析的工具? oprofile利用cpu硬件层面提供的性能计数器(performance counter),通过计数采样,帮助我们从进程.函数.代码层面找出占用cpu的"罪魁祸首".下面我们通过实例,了解oprofile的具体使用方法. 常用命令 使用oprofile进行cpu使用情况检测,需要经过初始化.启动检测.导出检测数据.查看检测结果等步骤,以下为常用的oprofile命令. 初始化 opcontrol --no-vmlinux …
上菜了翠花:首先编译Oprofile需要三个源码:binutils.popt与oprofile Linux版(由于是在64位的linux系统编译-----敬请参考“在64位linux上编译32位程序”) binutils #!/bin/sh cd binutils-2.21 ./configure CFLAGS=-m32 CXXFLAGS=-m32 FFLAGS=-m32 FCFLAGS=-m32 LDFLAGS="-L/usr/lib32" --with-kernel-support…
一.内核支持: make menuconfig 1.评测菜单中启用 Oprofile ,在 .config 文件中设置?CONFIG_PROFILING=y?和?CONFIG_OPROFILE=y 2.Kernel Feature->[]Enable hardware performance counter support for perf events不要勾选 3.在boot options->console=ttyFIQ0 androidboot.console=ttyFIQ0 init=…
一.oprofile简介 Oprofile是linux上的性能监测工具,有人说是性能测试的神器.通过CPU硬件提供的性能计数器对事件进行采样,从代码层面分析程序的性能消耗情况,找出程序性能的问题点. oProfile是Linux平台上的一个功能强大的性能分析工具,支持两种采样(sampling)方式:基于事件的采样(eventbased)和基于时间的采样(timebased). 基于事件的采样是oProfile只记录特定事件(比如L2 cache miss)的发生次数,当达到用户设定的定值时oP…
Centos6下通过 oprofile分析CPU性能 2014-01-18 10:55:15 bobpen 阅读数 2218更多 分类专栏: linux   版权声明:本文为博主原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明. 本文链接:https://blog.csdn.net/bobpen/article/details/18444885 环境 Centos 6.4 x86_64 oprofile-0.9.9 oprofile安装 #wget http://n…
1.先收藏几篇博文,先解决问题,周末继续. http://www.cnblogs.com/bangerlee/archive/2012/08/30/2659435.html http://blog.sina.com.cn/s/blog_4a471ff601013pnx.html…
Android 常用的开发工具记录.其中包括AndroidStudio(IDEA)插件.Mac 上好用的软件以及国内知名Android开发者博客等. Android Studio 插件 codota 插件,提供高质量的Android代码片段搜索,官方网站codota官网 Android 网站 Android Developer Androuid 官网,不解释. AndroidDevTool 国人维护的Android开发工具的整理. Android Arsenal 各种各样的Android开源库的…
人类大脑与眼睛对一个画面的连贯性感知其实是有一个界限的,譬如我们看电影会觉得画面很自然连贯(帧率为24fps),用手机当然也需要感知屏幕操作的连贯性(尤其是动画过度),所以Android索性就把达到这种流畅的帧率规定为60fps. 有了上面的背景,我们开发App的帧率性能目标就是保持在60fps,也就是说我们在进行App性能优化时心中要有如下准则: <code class="hljs brainfuck has-numbering" style="display: bl…
Perf简介 Perf是Linux kernel自带的系统性能优化工具.虽然它的版本还只是0.0.2,Perf已经显现出它强大的实力,足以与目前Linux流行的OProfile相媲美了. Perf 的优势在于与Linux Kernel的紧密结合,它可以最先应用到加入Kernel的new feature.而像OProfile, GProf等通常会“慢一拍”.Perf的基本原理跟OProfile等类似,也是在CPU的PMU registers中Get/Set performance counters…
转自:http://blog.csdn.net/xiangjai/article/details/9012387 在学习Android的过程中,学习写应用还好,一开始不用管太多代码,直接调用函数就可以了,但是工作中却需要修改到framework之类的东东 所以感觉开始纠结了,又是初学,很多不懂,所以就去找了关于源代码结构介绍的,感觉有很大帮助,所以转载过来分享 Android 4.0|-- Makefile|-- bionic (bionic C库)|-- bootable (启动引导相关代码)…
Awk总结笔记 介绍 90年代 new awk :nawk Linux 的是gawk 我们简化awk 用法 #  awk [options ] ‘scripts’ file1 file2 .... # awk [options ] ‘PATTERN {action }’ file1 file2 .... 读入文本先切片如下 切5片 每片$n  整行$0 每行片数不一样 Print 内置变量 以下为awk内置变量: ARGC        命令行参数个数 FILENAME    当前输入文档的名称…
linux内核的linux-3.6.5\Documentation\kbuild\makefiles.txt Linux Kernel Makefiles This document describes the Linux kernel Makefiles. === Table of Contents === Overview === Who does what === The kbuild files --- 3.1 Goal definitions --- 3.2 Built-in obje…
What is RCU, Fundamentally? https://lwn.net/Articles/262464/ If you can fill the unforgiving secondwith sixty minutes worth of distance run,“Highly scalable” your code will be reckoned,And—which is more—you'll have parallel fun! With apologies to Rud…
android源码的目录结构 [以下网络摘抄] |-- Makefile ! l/ a5 n% S% @- `0 d# z# a$ P4 V3 o7 R|-- bionic                        (bionic C库) |-- bootable                (启动引导相关代码) |-- build                        (存放系统编译规则及generic等基础开发包配置) |-- cts                      …
Android源码的第一级目录结构   Android/abi (abi相关代码.ABI:application binary interface,应用程序二进制接口)   Android/bionic(bionic C库)   Android/bootable(启动引导相关代码)   Android/build(存放系统编译规则及generic等基础开发配置包)   Android/cts(Android兼容性测试套件标准)   Android/dalvik(dalvik JAVA虚拟机)  …