程式執行cpu的時間,返回值是浮點數 (單位 秒) 推薦使用 (比毫秒表示更為精確)
import time
start = time.clock()
# do things
end = time.clock()
print('running time: %s seconds'%(end-start))
cpu time:是當cpu完全被某個程序所使用時所花費的時間,因為cpu並不是被某個程序單獨占用的,在你的程序執行的這段時間中,你的程序可能只占用了其中若干的時間片(由作業系統決定),cpu時間只是處理你的程序占用的那些時間片的相加,對於這段時間中由其他程序占用的時間片是不納入你的程序的cpu時間的。
wall time
wall time:(牆上時鐘),理解為程序從開始到結束的時間,包括其他程序占用的時間。
(1970紀元後經過的浮點秒數)
import time
start = time.time()
# do things
end = time.time()
print('running time: %s seconds'%(end-start))
cpu 時間
import datetime
start=datetime.datetime.now()
#do things
end=datetime.datetime.now()
print('running time: %s seconds'%(end-start))
long starttime = system.currenttimemillis();
do things
long endtime = system.currenttimemillis();
system.out.println("runing time:" + (endtime - starttime) + "ms");
clock() 返回cpu時間 毫秒 windows較好
#includeclock_t start, end;
start = clock();
//do things
end = clock();
printf("runing time=%f s.\n",(float)(end-start)/clocks_per_sec);//s
printf("runing time=%f s.\n",end-start);//ms
//標頭檔案
#include#include struct timeval starttime,endtime;
gettimeofday(&starttime,0);
//do things
gettimeofday(&endtime,0);
double timeuse = 1000000*(endtime.tv_sec - starttime.tv_sec)
+endtime.tv_usec - startime.tv_usec;
//timeuse 為微妙
timeuse /=1000;//除以1000則進行毫秒計時,如果除以1000000則進行秒級別計時
printf("%.2lf ms",timeuse); //timeuse型別為double
timeval的結構如下:
strut timeval
;
具體詳解
在ghci 命令列中輸入 :set +s
可以看到執行的任何東西的執行時間,以及記憶體的使用情況。 時間為 保留兩位小數的 s
*main> :set +s
*main> myqsort [2,3,4,1,6,2]
[1,2,2,3,4,6]
(0.15 secs, 77,888 bytes)
*main>
有關haskell 關於時間部分 參考
函式執行時間計算
在最近的工作中,遇到了需要檢視某些函式執行具體時間的需求,現在分享給大家,如果有更好的改進,大家相互交流,這裡只做拋磚引玉的作用。既然要想計算時間,那麼就必須知道如何計算時間,這裡選用的計算時間的函式為 do gettimeofday returns the time of day in a tim...
計算執行時間
使用方法 double t double gettickcount do something t double gettickcount t gettickfrequency 所用函式為gettickcount 和gettickfrequency gettickcount 返回cpu自某個時間 如啟...
計算執行時間
import datetime starttime datetime.datetime.now long running endtime datetime.datetime.now print endtime starttime seconds 上例演示了計算執行時間的例子,以秒進行顯示。d1 da...