summaryrefslogtreecommitdiffstats
path: root/SD-VBS/common/c/photonReportTiming.c
diff options
context:
space:
mode:
authorLeo Chan <leochanj@live.unc.edu>2020-10-22 01:53:21 -0400
committerJoshua Bakita <jbakita@cs.unc.edu>2020-10-22 01:56:35 -0400
commitd17b33131c14864bd1eae275f49a3f148e21cf29 (patch)
tree0d8f77922e8d193cb0f6edab83018f057aad64a0 /SD-VBS/common/c/photonReportTiming.c
parent601ed25a4c5b66cb75315832c15613a727db2c26 (diff)
Squashed commit of the sb-vbs branch.
Includes the SD-VBS benchmarks modified to: - Use libextra to loop as realtime jobs - Preallocate memory before starting their main computation - Accept input via stdin instead of via argc Does not include the SD-VBS matlab code. Fixes libextra execution in LITMUS^RT.
Diffstat (limited to 'SD-VBS/common/c/photonReportTiming.c')
-rw-r--r--SD-VBS/common/c/photonReportTiming.c28
1 files changed, 28 insertions, 0 deletions
diff --git a/SD-VBS/common/c/photonReportTiming.c b/SD-VBS/common/c/photonReportTiming.c
new file mode 100644
index 0000000..c41d103
--- /dev/null
+++ b/SD-VBS/common/c/photonReportTiming.c
@@ -0,0 +1,28 @@
1/********************************
2Author: Sravanthi Kota Venkata
3********************************/
4
5/** C File **/
6#include <stdio.h>
7#include <stdlib.h>
8#include <string.h>
9#include <assert.h>
10#include <math.h>
11#include "timingUtils.h"
12#include "sdvbs_common.h"
13
14unsigned int * photonReportTiming(unsigned int* startCycles,unsigned int* endCycles)
15{
16
17 static unsigned int *elapsed;
18 elapsed = (unsigned int*)malloc(sizeof(unsigned int)*2);
19 unsigned long long start = (((unsigned long long)0x0) | startCycles[0]) << 32 | startCycles[1];
20 unsigned long long end = (((unsigned long long)0x0) | endCycles[0]) << 32 | endCycles[1];
21 unsigned long long diff = end - start;
22 elapsed[0] = (unsigned int)(diff >> 32);
23 elapsed[1] = (unsigned int)(diff & 0xffffffff);
24 return elapsed;
25
26}
27
28/** End of C Code **/