天天看點

Linux擷取程序執行時間

1、前言

      測試一個程式的執行時間,時間包括使用者cpu時間、系統cpu時間、時鐘時間。之前擷取之前時間都是在程式的main函數用time函數實作,這個隻能粗略的計算程式的執行時間,不能準确的擷取其他時間。在看《apue》時,書中有關程式時間測試程式,非常正規,提供這三個時間。如是,上網搜了一下,進行總結一下。

2、擷取方法

  有兩種方法可以擷取,第一種是用time指令,time 程序。第二種是通過在程式中進行記錄,首先利用sysconf函數擷取時鐘滴答數,再用times擷取tms結構。

檢視times函數,man 2 tms,得到tms結構定義和times函數聲明如下:

注意:此處計算的時間是時鐘滴答數,需要除以系統時鐘滴答數,得出實際的秒數。

3、測試例子:

測試程式如下:

Linux擷取程式執行時間
Linux擷取程式執行時間

測試結果如下所示:

Linux擷取程式執行時間

采用time指令,測試結果如下所示:

Linux擷取程式執行時間

繼續閱讀