sysprog21
not-done
louielu
contributed by <louielu
>
github: https://gtihub.com/grapherd/compute-pi
computepi.h
這個檔案放有待測試 function 的宣告
computepi.c
compute pi function 實做的地方
time_test.c
透過 gcc -Dmacro 的方式來產生不同的測試程式,舉例來說想要產生 openmp_2 的測試程式
$ gcc -DOPENMP_2 -O0 time_test.c computepi.o -o time_test_openmp_2
就能產生,相關的指令參看 Makefile default:
部份。
這邊所產生的測試檔,都是測試單一函式的程式,同時預設的 N 是 400,000,000 次。
benchmark_clock_gettime.c
測試全部的函式,然後輸出每個函式執行的時間。
有 args int N
,代表函式迭代的次數。
時間使用 clock_gettime
來取得,預設使用的 clock 是 CLOCK_MONOTONIC_RAW
。取樣次數預設為 25 次,參看 loop
變數。
$ ./benchmark_clock_gettime 250
0.000084,0.000117,0.008408,0.000041,0.000038
benchmark_clock_gettime
應該要變更為 95% 信賴區間的統計資料。