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

C++ Coder

HCP高性能計算架構,實現,編譯器指令優化,算法優化, LLVM CLANG OpenCL CUDA OpenACC C++AMP OpenMP MPI

C++博客 首頁 新隨筆 聯系 聚合 管理
  98 Posts :: 0 Stories :: 0 Comments :: 0 Trackbacks
http://blog.csdn.net/dongjun7357/article/details/6277682

一、GProfile簡介

      GProfile是gcc的一個工具,用于對應用程序的測試。

      GProfile可以分析出函數的調用次數、函數的調用關系以及函數消耗的時間。

 

二、GProfile原理

      在編譯和鏈接你的程序的時候,gcc 在你應用程序的每個函數中都加入了一個名為mcount ( or "_mcount" , or "__mcount" , 依賴于編譯器或操作系統)的函數,也就是說你的應用程序里的每一個函數都會調用mcount, 而mcount 會在內存中保存一張函數調用圖,并通過函數調用堆棧的形式查找子函數和父函數的地址。這張調用圖也保存了所有與函數相關的調用時間,調用次數等等的所有信息。 

     程序運行結束后,會在程序退出的路徑下生成一個gmon.out文件,用來保存監控數據。從而通過gprof來解讀數據對程序進行分析。

          

三、GProfile用法

      1、在編譯時加入參數 -pg就可以打開GProfile的開關。

      2、gprof只查看用戶函數信息,不能對庫函數進行查看。 如果想查看庫函數的信息,在編譯時加入"-lc_p"編譯參數代替"-lc"編譯參數,這樣程序會鏈接libc_p.a庫,就可以查看庫函數的信息了。 
  3、 gprof只能在程序正常結束退出之后才能生成程序測評報告,原因是gprof通過在atexit()里注冊了一個函數來產生結果信息,任何非正常退出都不會執行atexit()的動作,所以不會產生gmon.out文件。如果你的程序是一個不會退出的服務程序,那就只有修改代碼來達到目的。如果不想改變程序的運行方式,可以添加一個信號處理函數解決問題(這樣對代碼修改最少),例如: 
  static void sighandler( int sig_no ) 
  { 
  exit(0); 
  } 
  signal( SIGUSR1, sighandler ); 
  當使用kill -USR1 pid 后,程序退出,生成gmon.out文件。 

 

四、GProfile舉例


#include 
<stdio.h> 

  
int ppp(int a) 

  


     
int i, b; 

     b 
= 0

     
for(i = 0; i<1000000; i++

        b
++

     }
 

     
return 0

  }
 

 


  
int prime(int n) 

  


     
int i, j, b; 

     b 
= 0

     
for(i=2; i<n; i++

         
for(j = 0; j<1000000; j++

              b
++

         }
 

         
if(n%== 0

           
return 0

         
return 1

        }
 

   }
 

  


   
int main(void

   


      
int i, n; 

      n 
= 1000

      
for(i=2; i<=n; i++

         
if(prime(i)) 

            ppp(i); 

         }
 

      }
 

      
return 0

   }
 

編譯程序:gcc -pg -o test test.c
  運行源程序./test后會生成一個gmon.out的文件
   分析結果:gprof -b test gmon.out
 

  

 

 五、GProfile對于結果的分析

      -b 不再輸出統計圖表中每個字段的詳細描述。 
  -p 只輸出函數的調用圖(Call graph的那部分信息)。 
  -q 只輸出函數的時間消耗列表。 
  -e Name 不再輸出函數Name 及其子函數的調用圖(除非它們有未被限制的其它父函數)。可以給定多個 -e 標志。一個 -e 標志只能指定一個函數。 
  -E Name 不再輸出函數Name 及其子函數的調用圖,此標志類似于 -e 標志,但它在總時間和百分比時間的計算中排除了由函數Name 及其子函數所用的時間。 
  -f Name 輸出函數Name 及其子函數的調用圖。可以指定多個 -f 標志。一個 -f 標志只能指定一個函數。 
  -F Name 輸出函數Name 及其子函數的調用圖,它類似于 -f 標志,但它在總時間和百分比時間計算中僅使用所打印的例程的時間。可以指定多個 -F 標志。一個 -F 標志只能指定一個函數。-F 標志覆蓋 -E 標志。 
  -z 顯示使用次數為零的例程(按照調用計數和累積時間計算)。 

      GProfile的詳細請參考:http://www.cs.utah.edu/dept/old/texinfo/as/gprof.html

      這個文檔對GProfile說的很詳細,很好。


posted on 2012-10-26 15:41 jackdong 閱讀(1209) 評論(0)  編輯 收藏 引用 所屬分類: 性能分析工具

只有注冊用戶登錄后才能發表評論。
網站導航: 博客園   IT新聞   BlogJava   博問   Chat2DB   管理


青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <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>
            欧美成人自拍视频| 亚洲欧洲精品一区二区| 国产亚洲欧洲一区高清在线观看| 欧美激情一区二区三区四区 | 欧美高清一区| 欧美福利专区| 亚洲激情影院| 夜夜嗨av一区二区三区四区| 欧美一区激情视频在线观看| 国产精品久久久久久超碰| 亚洲一区国产一区| 久久一区二区视频| 亚洲视频中文字幕| 国产一区二区久久久| 国产一级久久| 亚洲国产精品福利| 国产精品第13页| 国产视频一区二区在线观看| 久久一区精品| 亚洲高清中文字幕| 亚洲男人的天堂在线观看| 国产欧美日韩一区二区三区在线观看 | 99精品欧美一区二区蜜桃免费| 夜夜狂射影院欧美极品| 亚洲一区二区三区精品在线| 久久久噜噜噜久久中文字幕色伊伊 | 欧美激情aaaa| 欧美一区二区三区啪啪| 日韩视频精品| 欧美顶级少妇做爰| 亚洲精品在线三区| 裸体歌舞表演一区二区| 亚洲欧美日韩精品综合在线观看| 久久国产成人| 亚洲免费在线观看| 欧美sm极限捆绑bd| 久久久久天天天天| 亚洲欧美经典视频| 蜜臀av性久久久久蜜臀aⅴ四虎| 亚洲综合精品自拍| 亚洲免费成人av| 亚洲国产精品ⅴa在线观看| 亚洲精品在线二区| 老鸭窝亚洲一区二区三区| 一区二区黄色| 亚洲综合色婷婷| 日韩视频一区| 久久久综合网| 国产精自产拍久久久久久| 欧美日韩日韩| 欧美国产日本在线| 国语自产精品视频在线看一大j8| 国产婷婷成人久久av免费高清 | 欧美日韩亚洲国产精品| 亚洲电影免费观看高清完整版在线观看 | 亚洲欧美综合v| 可以免费看不卡的av网站| 午夜精品久久久久久久| 一区二区av在线| 国产一区二区精品丝袜| 亚洲一区三区电影在线观看| 亚洲福利国产| 久久最新视频| 久久在线观看视频| 韩国在线视频一区| 久久综合精品一区| 久久久99精品免费观看不卡| 久久成人国产| 久久这里有精品视频| 国产精品午夜国产小视频| 国产一区二区精品| 久久精品日韩| 欧美aⅴ99久久黑人专区| 欧美自拍偷拍| 欧美精品手机在线| 国产精品二区影院| 亚洲私人影院| 亚洲欧美国产高清va在线播| 国产女优一区| 久久蜜臀精品av| 久久综合亚州| 一本大道久久a久久综合婷婷| 亚洲精品国产系列| 久久精品电影| 亚洲国产精品嫩草影院| 欧美韩国一区| 久久九九免费| 亚洲精品国产精品国自产观看浪潮 | 久久综合色播五月| 欧美成人tv| 国产精品久久久久9999吃药| 先锋影音久久久| 91久久综合亚洲鲁鲁五月天| 欧美久久成人| 亚洲电影自拍| 亚洲国产一区二区在线| 欧美怡红院视频一区二区三区| 国产亚洲人成a一在线v站| 亚洲大胆av| 久久免费少妇高潮久久精品99| 国产精品成人一区二区| 久久精品国产77777蜜臀| 久久青草福利网站| 一本色道久久综合精品竹菊| 小嫩嫩精品导航| 欧美日韩中文字幕在线| 亚洲激情在线激情| 亚洲欧美日韩在线播放| 亚洲欧美日产图| 久久中文欧美| 国产欧美69| 欧美国产日本高清在线| 国产精品揄拍500视频| 欧美激情中文字幕一区二区| 国产精品亚洲人在线观看| 欧美高清视频| 国产日韩1区| 欧美激情91| 国产在线日韩| 久久久久久久999| 欧美极品在线观看| 久久在线视频在线| 国产精品免费视频观看| 一区二区三区久久| 久久久精品网| 久久www成人_看片免费不卡| 欧美午夜片在线观看| 亚洲综合色噜噜狠狠| 久久色在线播放| 久久精品综合一区| 国产精品一区二区久久国产| 亚洲精品乱码久久久久久久久 | 亚洲看片一区| 久久中文字幕一区| 久久久视频精品| 国产在线观看一区| 午夜激情一区| 欧美在线观看视频一区二区三区| 国产精品久久午夜| 亚洲天堂成人| 国产欧美日韩精品在线| 国产精品99久久久久久久女警 | 欧美一级片一区| 欧美日韩在线看| 亚洲深夜福利在线| 在线视频你懂得一区| 欧美日韩一区高清| 亚洲午夜精品17c| 亚欧成人在线| 国产日韩欧美电影在线观看| 午夜视频精品| 噜噜噜噜噜久久久久久91 | 国产九区一区在线| 欧美亚洲视频一区二区| 久久久久久网站| 亚洲电影一级黄| 老司机午夜精品视频在线观看| 欧美成人一二三| 亚洲精品久久在线| 亚洲免费在线观看| 久久久综合网站| 亚洲黄一区二区| 欧美日韩在线观看一区二区三区 | 国产精品网站在线| 亚洲女人天堂av| 久久精品电影| 91久久线看在观草草青青| 亚洲一区二区三区乱码aⅴ| 亚洲在线网站| 久久综合福利| 一卡二卡3卡四卡高清精品视频| 国产精品一区二区久激情瑜伽| 久久精视频免费在线久久完整在线看 | 亚洲少妇最新在线视频| 久久久久久网站| 亚洲黄页视频免费观看| 欧美午夜电影网| 久久久蜜桃精品| 亚洲乱码日产精品bd| 久久精品夜夜夜夜久久| 亚洲国产精品va在线看黑人| 国产精品不卡在线| 麻豆精品在线视频| 久久五月天婷婷| 99精品视频一区| 久久精品国产综合精品| 亚洲第一黄色网| 久久久www成人免费精品| 91久久精品www人人做人人爽| 老牛嫩草一区二区三区日本| 中文亚洲欧美| 欧美成人精品在线播放| 性做久久久久久久免费看| 亚洲黄色性网站| 狠狠色丁香婷婷综合久久片| 欧美视频二区36p| 欧美风情在线观看| 久久久久久伊人| 先锋亚洲精品| 亚洲欧美日韩精品久久久|