久久ER99热精品一区二区-久久精品99国产精品日本-久久精品免费一区二区三区-久久综合九色综合欧美狠狠

博客專欄

EEPW首頁 > 博客 > linux下統計程序/函數運行時間

linux下統計程序/函數運行時間

發布人:電子禪石 時間:2019-07-20 來源:工程師 發布文章
一. 使用time 命令

例如編譯一個hello.c文件

#gcc hello.c -o hello

生成了hello可執行文件,此時統計該程序的運行時間便可以使用如下命令

#time ./hello 
在程序運行結束后便會顯示出所需時間

real    0m2.913s
user    0m0.012s
sys     0m0.508s

 

二. 使用clock()函數統計

復制代碼
 1 #include<stdio.h>           
 2 #include <time.h>               /*要包含的頭文件*/ 3  4 int main(int argc, char *argv[]) 5 { 6     /* Init  */ 7     clock_t start, end; 8     start = clock();           /*記錄起始時間*/ 9 10     printf("time calc test\n");11 /*12     *13     *14     * 函數進行的一些列操作15     *16     * */17 18     /* Final Status */19     end = clock();           /*記錄結束時間*/20     {21         double seconds  =(double)(end - start)/CLOCKS_PER_SEC;22         fprintf(stderr, "Use time is: %.8f\n", seconds);23     }24     return 0;25 }
復制代碼

 

運行結果:

復制代碼
# time ./helloTest
time calc test
Use time is 0.00003100real    0m0.003s
user    0m0.000s
sys     0m0.000s
復制代碼

 

CLOCKS_PER_SEC用于將clock()函數的結果轉化為以秒為單位的量

三. 優缺點對比

time命令在不修改代碼的情況下記錄程序運行時間,但是,從上面對比可看出time命令統計的結果比較粗糙。 
另外,time命令,統計的結果包涵程序加載和退出的時間。因此,若想得出函數運行時間較為準確的結果,建議使用clock()函數。 
若想了解整個項目中各個函數的運行時間,以期獲得性能提升,建議使用——開源工具

 

轉自:http://blog.csdn.net/davie1love/article/details/47087475


*博客內容為網友個人發布,僅代表博主個人觀點,如有侵權請聯系工作人員刪除。

三維掃描儀相關文章:三維掃描儀原理


關鍵詞:

相關推薦

技術專區

關閉