summaryrefslogtreecommitdiff
path: root/BFS/support
diff options
context:
space:
mode:
authorDaniel Friesel <daniel.friesel@uos.de>2023-05-25 10:24:36 +0200
committerDaniel Friesel <daniel.friesel@uos.de>2023-05-25 10:24:36 +0200
commit1aad3d349b0bdd2e7eae586ec6a7400e8ba9225e (patch)
treef82dafa7674896f5773e976a9056f79c416dc69e /BFS/support
parentb3235ccc79c0783e95c1c5524b8b421d2d048cf7 (diff)
port BFS CPU baseline to dfatool
Diffstat (limited to 'BFS/support')
-rw-r--r--BFS/support/timer.h27
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
-