易截截图软件、单文件、免安装、纯绿色、仅160KB

Linux下程序的Profile工具

Linux下程序的Profile工具
我们在写程序,特别是嵌入式程序的时候,通常需要对程序的性能进行分析,以便程序能够更快更好地运行,达到实时(real-time)的目的。如果程序很大,分析起来就很困难。如果有个工具能够自动进行程序的性能分析,那就最好了。这里介绍一种Linux下程序的Profiling工具----GNU profiler。
GNU gprof能够打印出程序运行中各个函数消耗的时间,可以帮助程序员找出众多函数中耗时最多的函数。产生程序运行时候的函数调用关系,包括调用次数,可以帮助程序员分析程序的运行流程。有 了函数的调用关系,这会让开发人员大大提高工作效率,不用费神地去一点点找出程序的运行流程,这对小程序来说可能效果不是很明显,但对于有几万,几十万代 码量的工程来说,效率是毋庸置疑的!而且这个功能对于维护旧代码或者是分析Open Source来说那是相当诱人的,有了调用图,对程序的运行框架也就有了一个大体了解,知道了程序的“骨架“,分析它也就不会再那么茫然,尤其是对自己不 熟悉的代码和Open Source。
gprof的基本用法:
1. 使用 -pg 选项编译和链接你的应用程序
   
    在gcc编译程序的时候,加上-pg选项,例如:
    gcc -pg -o test test.c
    这样就生成了可执行文件test。如果是大项目,就在makefile里面修改编译选项,-pg放在那里都行。
2. 执行你的应用程序使之生成供gprof 分析的数据
    运行刚才的程序:./test,这样就生成了一个gmon.out文件,该文件就包含了profiling的数据。
3. 使用gprof 分析你的应用程序生成的数据
    gprof test gmon.out > profile.txt
    使用上面的命令,gprof就可以分析程序test的性能,将profiling的结果放在profile.txt文件中,打开就可以看到分析的结果。通过对结果的分析来改进我们的程序,从而达到我们的目的。
GNU gprof是个很不错的工具,大家写程序时可以多用用。我现在用gprof来profiling我的程序,把耗时最多的函数或运算找出来,用FPGA芯片实现,从而达到real-time的目的。
 
 
gprof使用介绍
gprof介绍
gprof是GNU profiler工具。可以显示程序运行的“flat profile”,包括每个函数的调用次数,每个函数消耗的处理器时间。也可以显示“调用图”,包括函数的调用关系,每个函数调用花费了多少时间


相关文档:

Linux 进程管理

1、程序和进程;
程序是为了完成某种任务而设计的软件,比如OpenOffice是程序。什么是进程呢?进程就是运行中的程序。
一个运行着的程序,可能有多个进程。 比如 LinuxSir.Org 所用的WWW服务器是apache服务器,当管理员启动服务后,可能会有好多人来访问,也就是说许多用户来同时请求httpd服务,apache服务器将会创建有多 ......

[整理]Linux常用命令

文件系统挂载:mount
格式:mount [-参数] [设备名称] [挂载点]
其中常用的参数:
   -t  指定设备的文件系统类型,常见的有:
        minix linux最早使用的文件系统
        ext2 linux目前常用的文件系统
        msdo ......

很受欢迎的Linux笔记

 
linux目录架构
/   根目录
/bin    常用的命令
binary file 的目錄
/boot   存放系统启动时必须读取的档案,包括核心
(kernel) 在内
     /boot/grub/menu.lst   GRUB设置
     /boot/vmlinuz   内核
......

LInux笔记

LInux笔记
观察系统的使用状态:如果要看目前有谁在在线,可以下达 who 这个指令,而如果要看网络的联
机状态,可以下达 netstat -a 这个指令,而要看背景执行的程序可以执行 ps -aux 这个指令。
使用这些指令可以让你稍微了解主机目前的使用状态!
关机的正确指令用法啰!
• 将数据同步写入硬盘中的指令: sync
& ......

Linux下OpenEv编译安装

 把GDAL安装目录下的../bin/gdal-config复制到/usr/bin/下,否则出现“找不到gdal-config”
把proj4安装目录下的../include/proj_api.h复制到GDAL安装目录中的include中,否则出现“未定义proj_api.h”或者直接把proj4安装到默认路径,否则会提示“找不到 -lproj”。 ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号