at_kazutaka.bito
2017年8月31日 18時48分
プログラムの処理速度を計測する方法として、gettimeofdayが使えます。
下記のコードのように、処理時間を測定したい処理(下記コードの場合、/** Describe Function for Measurement of time **/の箇所)の前後で、gettimeofdayで時刻を測定して、差分をとると、処理時間が測定できます。
#include <stdio.h> #include <sys/time.h> #include <stdlib.h> #include <string.h> int main() { struct timeval time1; struct timeval time2; float diff_time; gettimeofday(&time1, NULL); // printf("sec: %d, usec: %d\n", (int)time1.tv_sec, (int)time1.tv_usec); /** Describe Function for Measurement of time **/ gettimeofday(&time2, NULL); // printf("sec: %d, usec: %d\n", (int)time2.tv_sec, (int)time2.tv_usec); diff_time = time2.tv_sec - time1.tv_sec + (float)(time2.tv_usec - time1.tv_usec) / 1000000; printf("diff: %f[s]\n", diff_time); return 0; }