diff options
author | Daniel Friesel <daniel.friesel@uos.de> | 2023-05-25 10:24:36 +0200 |
---|---|---|
committer | Daniel Friesel <daniel.friesel@uos.de> | 2023-05-25 10:24:36 +0200 |
commit | 1aad3d349b0bdd2e7eae586ec6a7400e8ba9225e (patch) | |
tree | f82dafa7674896f5773e976a9056f79c416dc69e /BFS/support | |
parent | b3235ccc79c0783e95c1c5524b8b421d2d048cf7 (diff) |
port BFS CPU baseline to dfatool
Diffstat (limited to 'BFS/support')
-rw-r--r-- | BFS/support/timer.h | 27 |
1 files changed, 17 insertions, 10 deletions
diff --git a/BFS/support/timer.h b/BFS/support/timer.h index f8cd5fc..23116e3 100644 --- a/BFS/support/timer.h +++ b/BFS/support/timer.h @@ -6,22 +6,29 @@ #include <sys/time.h> typedef struct Timer { - struct timeval startTime; - struct timeval endTime; + struct timeval startTime[4]; + struct timeval stopTime[4]; + double time[4]; } Timer; -static void startTimer(Timer* timer) { - gettimeofday(&(timer->startTime), NULL); +static void startTimer(Timer *timer, int i, int rep) { + if(rep == 0) { + timer->time[i] = 0.0; + } + gettimeofday(&timer->startTime[i], NULL); } -static void stopTimer(Timer* timer) { - gettimeofday(&(timer->endTime), NULL); +static void stopTimer(Timer *timer, int i) { + gettimeofday(&timer->stopTime[i], NULL); + timer->time[i] += (timer->stopTime[i].tv_sec - timer->startTime[i].tv_sec) * 1000000.0 + + (timer->stopTime[i].tv_usec - timer->startTime[i].tv_usec); } -static float getElapsedTime(Timer timer) { - return ((float) ((timer.endTime.tv_sec - timer.startTime.tv_sec) - + (timer.endTime.tv_usec - timer.startTime.tv_usec)/1.0e6)); +static void printAll(Timer *timer, int maxt) { + for (int i = 0; i <= maxt; i++) { + printf(" timer%d_us=%f", i, timer->time[i]); + } + printf("\n"); } #endif - |