計算程式執行時間

2021-05-23 17:18:01 字數 998 閱讀 6518

在長時間計算程式執行時間時,可以使用clock函式。clock比較通用,精度並不是特別的高,大約是10ms。但是對於長時間的計算的話,還是可以使用的。

以下是一段示例程式,將幫助你理解:

#include "stdio.h"

#include "memory.h"

#include "time.h"

#define size (65535)

//使用兩種方法進行記憶體copy

//session 1:單純的迴圈拷貝,由於沒有系統的優化速度會比較慢

#define dumbcopy for(i=0; i < size; i++) destination[i] = source[i]

//session 2:使用系統優化過後的memcpy函式,速度明顯較快

#define smartcopy memcpy(destination, source, size)

int main(int argc, char* argv)

clockt2 = clock();

printf("clock tick run: %d/n",(clockt2-clockt1));

printf("time run test by clock : %10.3f /n", (double)(clockt2-clockt1)/clocks_per_sec);

//conclusion:在計算程式執行的時長時,可以使用clock函式

//clock函式計算的是cpu耗在本程式上的時間,也就是說中途遇到sleep,由於系統資源被釋放,這段時間將

//不會計算在內。

//其次得到的返回值其實是耗在本程式上的cpu時間片的數量,即clock tick。該值需要除以clocks_per_sec巨集

//才能得到ss.mmnn格式的執行時間。在posix相容系統中,clocks_per_sec的值為1,000,000,即1mhz

//使用clock得到的精度大約是10ms。

return 0;

}

程式執行時間計算

int sum int n 分析 宣告不計時間,第一句,第四句各占用乙個時間單位。第三句每執行一次占用四個時間單位,兩次乘法,一次加法,一次賦值。而執行n次共占用4n個時間單位。第二行初始化i,乙個時間單位 測試i n,n 1個時間單位 i n個時間單位 總共2n 2。忽略呼叫,返回值的開銷,以上總...

計算程式執行時間

在編寫完程式後,通常都會對程式進行效能測試,比較常用的方法就是計算完成某個任務所花費的時間。system類提供了獲得當前時間的方法,但是其單位是毫秒,閱讀不方便。本例項將其轉換成方便的閱讀格式。例項執行效果如圖 system類包含一些有用的類字段和方法,它不能被例項化。在 system 類提供的設施...

php程式執行時間 php計算程式的執行時間

首先我們分析一下原理,要想得到程式執行時間,那麼可以在程式最開始執行的時候定義乙個變數記下當前時間,然後等我們程式執行完之後再記錄一下當前的時間,兩者相差就是該程式執行花費的時間了。這裡介紹一下 microtime 這個函式,microtime 用的不多,但是不能不知道這個函式,它是返回當前 uni...