青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

gprof——GNU性能分析工具

Posted on 2013-04-22 16:39 天邊藍(lán) 閱讀(1127) 評(píng)論(0)  編輯 收藏 引用 所屬分類: Linux
轉(zhuǎn)載至http://www.cnblogs.com/feisky/archive/2010/03/09/1681997.html

gprof介紹

gprof是GNU profiler工具??梢燥@示程序運(yùn)行的“flat profile”,包括每個(gè)函數(shù)的調(diào)用次數(shù),每個(gè)函數(shù)消耗的處理器時(shí)間。也可以顯示“調(diào)用圖”,包括函數(shù)的調(diào)用關(guān)系,每個(gè)函數(shù)調(diào)用花費(fèi)了多少時(shí)間。還可以顯示“注釋的源代碼”,是程序源代碼的一個(gè)復(fù)本,標(biāo)記有程序中每行代碼的執(zhí)行次數(shù)。

為gprof編譯程序


在編譯或鏈接源程序的時(shí)候在編譯器的命令行參數(shù)中加入“-pg”選項(xiàng),編譯時(shí)編譯器會(huì)自動(dòng)在目標(biāo)代碼中插入用于性能測(cè)試的代碼片斷,這些代碼在程序在運(yùn)行時(shí)采集并記錄函數(shù)的調(diào)用關(guān)系和調(diào)用次數(shù),以及采集并記錄函數(shù)自身執(zhí)行時(shí)間和子函數(shù)的調(diào)用時(shí)間,程序運(yùn)行結(jié)束后,會(huì)在程序退出的路徑下生成一個(gè)gmon.out文件。這個(gè)文件就是記錄并保存下來的監(jiān)控?cái)?shù)據(jù)??梢酝ㄟ^命令行方式的gprof或圖形化的Kprof來解讀這些數(shù)據(jù)并對(duì)程序的性能進(jìn)行分析。另外,如果想查看庫函數(shù)的profiling,需要在編譯是再加入“-lc_p”編譯參數(shù)代替“-lc”編譯參數(shù),這樣程序會(huì)鏈接libc_p.a庫,才可以產(chǎn)生庫函數(shù)的profiling信息。如果想執(zhí)行一行一行的profiling,還需要加入“-g”編譯參數(shù)。
例如如下命令行:gcc -Wall -g -pg -lc_p example.c -o example

Gprof基本用法:

1. 使用 -pg 編譯和鏈接你的應(yīng)用程序。

2. 執(zhí)行你的應(yīng)用程序使之生成供gprof 分析的數(shù)據(jù)。

3. 使用gprof 程序分析你的應(yīng)用程序生成的數(shù)據(jù)。

$gprof -b a.out gmon.out      
Flat profile:

Each sample counts as 0.01 seconds.
no time accumulated

  %   cumulative   self              self     total          
time   seconds   seconds    calls  Ts/call  Ts/call  name   
  0.00      0.00     0.00        1     0.00     0.00  function

                        Call graph

granularity: each sample hit covers 2 byte(s) no time propagated

index % time    self  children    called     name
                0.00    0.00       1/1           main [8]
[1]      0.0    0.00    0.00       1         function [1]
-----------------------------------------------

Index by function name

   [1] function

gprof產(chǎn)生的信息


%                        the percentage of the total running time of the
time                     program used by this function.
                           函數(shù)使用時(shí)間占所有時(shí)間的百分比。
cumulative          a running sum of the number of seconds accounted
seconds             for by this function and those listed above it.
                           函數(shù)和上列函數(shù)累計(jì)執(zhí)行的時(shí)間。
self                    the number of seconds accounted for by this
seconds             function alone.  This is the major sort for this
                          listing.
                          函數(shù)本身所執(zhí)行的時(shí)間。
calls                   the number of times this function was invoked, if
                          this function is profiled, else blank.
                          函數(shù)被調(diào)用的次數(shù)
self                   the average number of milliseconds spent in this
ms/call               function per call, if this function is profiled,
                         else blank.
                          每一次調(diào)用花費(fèi)在函數(shù)的時(shí)間microseconds。
total                  the average number of milliseconds spent in this
ms/call               function and its descendents per call, if this
                          function is profiled, else blank.
                          每一次調(diào)用,花費(fèi)在函數(shù)及其衍生函數(shù)的平均時(shí)間microseconds。
name                 the name of the function.  This is the minor sort
                          for this listing. The index shows the location of
                          the function in the gprof listing. If the index is
                          in parenthesis it shows where it would appear in
                          the gprof listing if it were to be printed.
                          函數(shù)名

命令格式

gprof [可執(zhí)行文件] [gmon.out文件] [其它參數(shù)]

方括號(hào)中的內(nèi)容可以省略。如果省略了“可執(zhí)行文件”,gprof會(huì)在當(dāng)前目錄下搜索a.out文件作為可執(zhí)行文件,而如果省略了gmon.out文件,gprof也會(huì)在當(dāng)前目錄下尋找gmon.out。其它參數(shù)可以控制gprof輸出內(nèi)容的格式等信息。最常用的參數(shù)如下:

l -b 不再輸出統(tǒng)計(jì)圖表中每個(gè)字段的詳細(xì)描述。

l -p 只輸出函數(shù)的調(diào)用圖(Call graph的那部分信息)。

l -q 只輸出函數(shù)的時(shí)間消耗列表。

l -e Name 不再輸出函數(shù)Name 及其子函數(shù)的調(diào)用圖(除非它們有未被限制的其它父函數(shù))??梢越o定多個(gè) -e 標(biāo)志。一個(gè) -e 標(biāo)志只能指定一個(gè)函數(shù)。

l -E Name 不再輸出函數(shù)Name 及其子函數(shù)的調(diào)用圖,此標(biāo)志類似于 -e 標(biāo)志,但它在總時(shí)間和百分比時(shí)間的計(jì)算中排除了由函數(shù)Name 及其子函數(shù)所用的時(shí)間。

l -f Name 輸出函數(shù)Name 及其子函數(shù)的調(diào)用圖。可以指定多個(gè) -f 標(biāo)志。一個(gè) -f 標(biāo)志只能指定一個(gè)函數(shù)。

l -F Name 輸出函數(shù)Name 及其子函數(shù)的調(diào)用圖,它類似于 -f 標(biāo)志,但它在總時(shí)間和百分比時(shí)間計(jì)算中僅使用所打印的例程的時(shí)間??梢灾付ǘ鄠€(gè) -F 標(biāo)志。一個(gè) -F 標(biāo)志只能指定一個(gè)函數(shù)。-F 標(biāo)志覆蓋 -E 標(biāo)志。

l -z 顯示使用次數(shù)為零的例程(按照調(diào)用計(jì)數(shù)和累積時(shí)間計(jì)算)。

不過,gprof不能顯示對(duì)象之間的繼承關(guān)系,這也是它的弱點(diǎn).


只有注冊(cè)用戶登錄后才能發(fā)表評(píng)論。
網(wǎng)站導(dǎo)航: 博客園   IT新聞   BlogJava   博問   Chat2DB   管理


Copyright © 天邊藍(lán)

青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            亚洲免费电影在线观看| 国产精品入口尤物| 亚洲综合三区| 欧美成人一区二区三区| 午夜精品久久久| 99日韩精品| 亚洲综合精品| 亚洲国产精品www| 久久精品91久久香蕉加勒比| 久久国产精品一区二区| 亚洲视频电影在线| 欧美在线播放高清精品| 亚洲欧美日韩国产中文| 久久午夜精品一区二区| 一区免费视频| 鲁大师成人一区二区三区| 久久精品一区二区三区不卡牛牛 | 欧美日韩在线亚洲一区蜜芽| 亚洲精品国产精品国产自| 欧美成年人视频| 欧美jizzhd精品欧美巨大免费| 欧美.日韩.国产.一区.二区| 久久九九精品99国产精品| 欧美精品国产一区| 国产日本欧美视频| 国产精品a久久久久| 亚洲高清视频中文字幕| 欧美国产日韩亚洲一区| 欧美激情偷拍| 午夜久久美女| 久久久亚洲欧洲日产国码αv| 激情亚洲网站| 亚洲日本欧美日韩高观看| 欧美日韩一区国产| 久久精品国产精品亚洲精品| 久久午夜羞羞影院免费观看| 亚洲国产天堂久久综合| 欧美一区二区三区久久精品| 亚洲精品久久久蜜桃| 玖玖综合伊人| 午夜精品三级视频福利| 亚洲精品日韩综合观看成人91| 亚洲福利在线观看| 麻豆精品视频在线观看视频| 欧美激情一区二区三区| 亚洲二区在线观看| 亚洲天堂激情| 亚洲国产精品嫩草影院| 一本色道久久88精品综合| 国产三区精品| 亚洲欧美国产77777| 久久九九免费| 午夜精品久久久久久久久久久| 欧美国产一区在线| 国产精品国产三级国产aⅴ9色| 99视频在线精品国自产拍免费观看 | 日韩一级黄色大片| 欧美一区二区日韩| 亚洲小说欧美另类社区| 美女国内精品自产拍在线播放| 欧美激情按摩| 久久综合影视| 亚洲人永久免费| 亚洲韩国青草视频| 欧美日韩日本视频| 亚洲欧美日韩中文视频| 亚洲自拍啪啪| 国内一区二区三区| 狂野欧美激情性xxxx欧美| 久久高清一区| 在线免费观看欧美| 欧美大片国产精品| 欧美精品一线| 午夜激情一区| 亚洲欧美影音先锋| 在线电影国产精品| 亚洲精选中文字幕| 国产欧美日韩| 欧美a级片一区| 性做久久久久久免费观看欧美| 中文在线一区| 欧美日韩美女在线| 亚洲日本成人| 日韩天堂av| 国产精品久久久久久久久久三级 | 欧美一区视频| 在线观看日韩av| 亚洲精品日韩激情在线电影| 国产精品日韩精品| 久久久久久久尹人综合网亚洲| 久久久久久久久久久成人| 亚洲精品在线免费| 亚洲自拍偷拍麻豆| 亚洲免费大片| 久久成人精品电影| 国产伦精品一区二区三区高清| 一本色道久久综合亚洲精品不 | 精品福利免费观看| 久久精品一本| 欧美成人激情在线| 亚洲人成毛片在线播放| 欧美激情国产日韩| 日韩系列在线| 香蕉乱码成人久久天堂爱免费| 国产精品高潮在线| 免费成人高清视频| 欧美在线观看网址综合| 亚洲图中文字幕| 男人插女人欧美| 亚洲精品欧美激情| 欧美日韩精品一区二区三区四区| 日韩视频一区| 国产欧美一区二区三区在线看蜜臀| 亚洲欧美日产图| 欧美日韩国产麻豆| 亚洲一级黄色av| 另类人畜视频在线| 亚洲久久视频| 久久久久国产精品人| 亚洲精品精选| 国产欧美日韩免费看aⅴ视频| 久久人人精品| 亚洲欧美制服中文字幕| 欧美一区二区三区播放老司机 | 久久综合一区二区三区| 狠狠干成人综合网| 欧美激情视频一区二区三区不卡| 一区二区三区偷拍| 另类春色校园亚洲| 亚洲欧美在线免费| 亚洲成在线观看| 国产精品美女久久久浪潮软件| 久久婷婷丁香| 亚洲无线一线二线三线区别av| 久久综合色8888| 亚洲欧美日韩国产成人精品影院| 一区免费视频| 国产精品丝袜91| 欧美激情1区2区3区| 欧美在线视频不卡| 在线视频日本亚洲性| 亚洲人成在线播放网站岛国| 亚洲图片欧美午夜| 欧美在线观看视频| 国产一区二区三区电影在线观看| 久久成人18免费观看| 一本色道久久99精品综合 | 性8sex亚洲区入口| 亚洲狼人综合| 亚洲大胆女人| 欧美成人在线影院| 亚洲精品中文字幕在线| 亚洲一区二区四区| 国产麻豆日韩| 久久理论片午夜琪琪电影网| 亚洲欧美日韩专区| 99国内精品久久| 亚洲国产毛片完整版| 裸体女人亚洲精品一区| 性久久久久久久久久久久| 好吊视频一区二区三区四区| 美女诱惑一区| 免费在线成人av| 久久爱www| 欧美一区二区三区在线观看| 亚洲综合欧美日韩| 一区二区三区视频在线看| 亚洲精品视频在线| 亚洲国产精品小视频| 好男人免费精品视频| 国产一级精品aaaaa看| 国产在线高清精品| 国产在线视频不卡二| 国产欧美亚洲视频| 国产亚洲成人一区| 国内精品久久久久影院优| 国产亚洲va综合人人澡精品| 国产区欧美区日韩区| 国产亚洲综合在线| 男人的天堂成人在线| 亚洲国产欧美在线| 久久久久国产精品www| 亚洲视频电影图片偷拍一区| 欧美高清一区二区| 欧美~级网站不卡| 欧美日本国产| 国产精品乱子久久久久| 亚洲一区不卡| 免费短视频成人日韩| 亚洲自拍16p| 亚洲精品资源| 在线看片第一页欧美| 国产精品久久久久影院色老大 | 久久久久久久综合色一本| 亚洲天堂久久| 99re6这里只有精品视频在线观看| 久久www成人_看片免费不卡| 久久久夜精品| 欧美日韩一区二区三区在线观看免 | 亚洲精品一区二区三区婷婷月 |