當測試乙個程式或比較不同演算法時,執行時間是非常重要的,乙個好的演算法應該是用時最短的。所有類unix系統都包含time命令
,使用這個命令可以統計時間消耗。例如:
[root@localhost ~]# time ls輸出的資訊分別顯示了該命令所花費的real時間、user時間和sys時間。anaconda-ks.cfg install.log install.log.syslog satools text
real 0m0.009s
user 0m0.002s
sys 0m0.007s
shell
內建也有乙個time命令,當執行time時候是呼叫的系統內建命令,應為系統內建的功能有限,所以需要時間其他功能需要使用time命令可執行二進位制檔案/usr/bin/time
。
使用-o選項
將執行時間寫入到檔案中:
/usr/bin/time -o outfile.txt ls使用
-a選項
追加資訊:
/usr/bin/time -a -o outfile.txt ls使用
-f選項
格式化時間輸出:
/usr/bin/time -f "time: %u" ls-f選項後的引數: 引數
描述%e
real時間,顯示格式為[小時:]分鐘:秒
%uuser時間。
%ssys時間。
%c進行計時的命令名稱和命令列引數。
%d程序非共享資料區域,以kb為單位。
%x命令退出狀態。
%k程序接收到的訊號數量。
%w程序被交換出主存的次數。
%z系統的頁面大小,這是乙個系統常量,不用系統中常量值也不同。
%p程序所獲取的cpu時間百分百,這個值等於user+system時間除以總共的執行時間。
%k程序的平均總記憶體使用量(data+stack+text),單位是kb。
%w程序主動進行上下文切換的次數,例如等待i/o操作完成。
%c程序被迫進行上下文切換的次數(由於時間片到期)。
Linux系統下C語言獲取Time
獲取時間的函式有很多,具體包括如下 一 gettimeofday 獲取當前微秒 us 等級的時間 time gettimeofday 等等,下面是獲取具體到usecond的時間程式 include include include include include using namespace std...
使用caffe自帶的time命令計算每層消耗的時間
在訓練backbone為mobilenet的模型的時候,發現訓練過程中每個迭代所需要的時間都很長,於是考慮使用測試工具測試每層所需要的時間,來排查原因.其中caffe自帶的net speed benchmark工具已經被棄用了 deprecated.use caffe time model iter...
Linux命令詳解 time
命令 time 執行命令並計時 格式 time p command arguments.說明 執行命令列 command arguments.命令列執行結束時在標準輸出中列印執行該命令列的時間統計結果,其統計結果包含以下資料 1 實際時間 real time 從command命令列開始執行到執行終止...