linux性能调优之-oprofile
文章平均质量分 87
bingqingsuimeng
这个作者很懒,什么都没留下…
展开
-
谁动了我的cpu——oprofile使用札记
谁动了我的cpu——oprofile使用札记引言cpu无端占用高?应用程序响应慢?苦于没有分析的工具?oprofile利用cpu硬件层面提供的性能计数器(performance counter),通过计数采样,帮助我们从进程、函数、代码层面找出占用cpu的"罪魁祸首"。下面我们通过实例,了解oprofile的具体使用方法。 常用命令使用oprofile进行cpu使用转载 2012-11-30 16:19:58 · 1209 阅读 · 0 评论 -
gdb bt遇到sleep的情况
attach是GDB一种重要的debug模式,在MPI程序debug中发挥重要的作用。具体的执行步骤如下:1) 首先在程序开始的地方添加如下代码, 注意这是个死循环,之所以用死循环就是让他一直在等待attch{ int i = 0; char hostname[256]; gethostname(hostname, sizeof(hostname));转载 2016-06-27 13:52:52 · 1157 阅读 · 0 评论 -
./autogen.sh: line 44: libtoolize: command not found
./autogen.sh + aclocal+ libtoolize --copy --force./autogen.sh: line 44: libtoolize: command not found是因为缺少libtool软件包make 时 出现的错误configure: creating ./config.status cd && /bin/sh ./co转载 2012-11-29 11:21:33 · 42987 阅读 · 1 评论 -
oprofile 使用之二(run 使用事件采样)
oprofile 是 Linux 平台上的一个功能强大的性能分析工具, 支持两种采样(sampling)方式:基于事件的采样(event based)和基于时间的采样(time based)。 基于事件的采样是oprofile只记录特定事件(比如L2 cache miss)的发生次数,当达到用户设定的 定值时oprofile 就记录一下(采一个样)。这种方式需要CPU 内部有转载 2012-11-29 17:37:28 · 1250 阅读 · 0 评论 -
oprofile 使用之三(run 使用时间采样)
经历了上述的失败,只能走第2条路,时间采样。 1.修改opcontrol脚本加载驱动的参数,搜索modprobe oprofile 修改为 modprobe oprofile timer=1 2.pcontrol --init 插入oprofile.ko驱动 挂载oprofilefs 3. opcontrol --no-vmlinux --setup转载 2012-11-29 17:38:10 · 1594 阅读 · 0 评论 -
各类分析函数调用关系图的工具
【转】各类分析函数调用关系图的工具calltree 2.3 http://mirror.lzu.edu.cn/software/calltree/calltree-2.3.tar.bz2 gprof 2.18.0.20080103 在ubuntu/debian下直接安装即可 http://citeseer.ist.psu.edu/gr转载 2012-11-30 18:43:13 · 3086 阅读 · 0 评论 -
Linux下运行OProfile进行系统性能分析
作者:ARM-WinCE 具体内容开始之前,先说点缘由。我不用WinCE已经很久了,呵呵,目前公司的项目都是基于Linux/Android,所以也开始在Linux上面做开发。我在接触WinCE之前就做Linux驱动,后来改做WinCE或者说主要做WinCE,但断断续续的接触Embedded Linux,所以写了大量的WinCE博客。现如今风水轮流转,以后要以Linux/Androi转载 2012-11-29 10:37:15 · 1113 阅读 · 0 评论 -
Linux 在海思3516上移植Oprofile----最新3.2虚拟上编译出错及解决办法
最近由于项目需求,需要将Oprofile移植到海思3516平台上。Oprofile是一款比较好用的开源的性能分析工具。它通过采样CPU来计算程序中每个部分占用的时间。应该说是比较准确的。在安装oprofile之前,需要保证系统支持oprofile。即在系统编译内核的时候要将一下两项勾上make menuconfigGeneral setup --->[*] Profilin转载 2012-11-29 13:15:08 · 3816 阅读 · 0 评论 -
使用oprofile查找性能瓶颈--错误及解决
1>确定以下内核选项已选定:CONFIG_OPROFILECONFIG_X86_LOCAL_APICCONFIG_X86_IO_APICCONFIG_PCI_IOAPIC2> oprofile 命令opcontrol --init #加载模块 opcontrol --vmlinux=/path/vmlinux #是否对k转载 2012-11-29 14:59:14 · 2682 阅读 · 0 评论 -
oprofile 使用步骤 测试程序中各函数运行时间----步骤
ophelp: 列出所有支持的事件。/oprofile-0.9.6/utils opcontrol:设置需要收集的事件。./utils/opcontrol opreport: 对结果进行统计输出。./pp/opreport opannotate:产生带注释的源/汇编文件,源语言级的注释需要编译源文件时的支持。./pp/opannotate opstack: 产生调用图profile转载 2012-11-29 17:31:04 · 3939 阅读 · 1 评论 -
使用Oprofile分析性能瓶颈--简单例子
1. oprofile简介oprofile 是 Linux 平台上的一个功能强大的性能分析工具, 支持两种采样(sampling)方式:基于事件的采样(event based)和基于时间的采样(time based)。基于事件的采样是oprofile只记录特定事件(比如L2 cache miss)的发生次数,当达到用户设定的 定值时oprofile 就记录一下(采一个样)。这种方式转载 2012-11-29 17:31:45 · 1809 阅读 · 0 评论 -
oprofile整理
前序:在网上搜资料的时候,经常会看见comcat关于龙芯的文章,对其的借鉴尤多,为了向其学习,本打算以后所有ID一 律更名为comeagle,不过貌似这个称号太长了~~ 大家有什么好点的名字,多多提意见! oprofile起源于John Levon (Victoria U of Manchester)的一篇硕士论文,最初它以DCPI(DEC Continuous Pro转载 2012-11-29 17:32:32 · 840 阅读 · 0 评论 -
oprofile 使用之一(build)
最近公司作新项目,在老的板子上跑着感觉异常的沉重,arm1176运行我们的程序有点不堪重负,于是产生了强烈的优化想法。 老大给机会让我研究一下gprof && oprofile 一开始搞gprof的过程稍候会补上。 后来参加了一次hello gcc 的活动,那里那些作编译器的推荐使用oprofile,因为gprof只是针对应用层的分析,而oprofile是通过硬件(CP转载 2012-11-29 17:36:50 · 1083 阅读 · 0 评论 -
oprofile 使用之四(注意事项---灰常重要)
1.在文件系统\etc下创建符号链接 ln –sf /proc/mounts mtab 。同时确保文件系统中存在如下共享库:libdl.so.2、libstdc++.so.6、libm.so.6、libgcc_s.so.1、libc.so.6。2.由于Oprofile编译时采用的是绝对路径,在编译时设置的安装路径必须与嵌入式平台上运行时的路径一致。可以复制/mnt/oprofile/文件夹转载 2012-11-29 17:38:49 · 1158 阅读 · 0 评论 -
oProfile简介
oProfile OProfile是Linux内核支持的一种性能分析机制。[1] 它在时钟中断处理入口处建立监测点,记录被中断的上下文现场,由配套的用户态的工具oprof_start负责在用户态收集数据,opreport则分析数据并给出分析报告。[1] Oprofile 是用于 Linux 的若干种评测和性能监控工具中的一种,它可以工作在不同的体系结构上转载 2012-11-30 14:39:28 · 1224 阅读 · 0 评论 -
利用Oprofile对多核多线程进行性能分析
杨小华在对应用程序不断调优的过程中,除了制定完备的测试基准(Benchmark)外,还需要一把直中要害的利器——性能分析工具。 根据工具的复杂度和所提供的功能,可以将性能工具分为两个层次: 基本的计时工具在普通生活中,秒表是最简单的计时工具。根据该思想,可以将计时函数放在代码的任意位置并多次调用,这样就可以测量出整个应用或者某一部分的运行时间。这种分析方转载 2012-11-30 15:39:22 · 1379 阅读 · 0 评论 -
io优化
1、系统学习IO性能对于一个系统的影响是至关重要的。一个系统经过多项优化以后,瓶颈往往落在数据库;而数据库经过多种优化以后,瓶颈最终会落到IO。而IO性能的发展,明显落后于CPU的发展。Memchached也好,NoSql也好,这些流行技术的背后都在直接或者间接地回避IO瓶颈,从而提高系统性能。 IO系统的分层: 三层结构上图层次比较多,但总的就是三部分。磁盘(转载 2017-03-17 14:35:49 · 559 阅读 · 0 评论