From d17b33131c14864bd1eae275f49a3f148e21cf29 Mon Sep 17 00:00:00 2001 From: Leo Chan Date: Thu, 22 Oct 2020 01:53:21 -0400 Subject: 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. --- SD-VBS/common/c/photonReportTiming.c | 28 ++++++++++++++++++++++++++++ 1 file changed, 28 insertions(+) create mode 100644 SD-VBS/common/c/photonReportTiming.c (limited to 'SD-VBS/common/c/photonReportTiming.c') 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 @@ +/******************************** +Author: Sravanthi Kota Venkata +********************************/ + +/** C File **/ +#include +#include +#include +#include +#include +#include "timingUtils.h" +#include "sdvbs_common.h" + +unsigned int * photonReportTiming(unsigned int* startCycles,unsigned int* endCycles) +{ + + static unsigned int *elapsed; + elapsed = (unsigned int*)malloc(sizeof(unsigned int)*2); + unsigned long long start = (((unsigned long long)0x0) | startCycles[0]) << 32 | startCycles[1]; + unsigned long long end = (((unsigned long long)0x0) | endCycles[0]) << 32 | endCycles[1]; + unsigned long long diff = end - start; + elapsed[0] = (unsigned int)(diff >> 32); + elapsed[1] = (unsigned int)(diff & 0xffffffff); + return elapsed; + +} + +/** End of C Code **/ -- cgit v1.2.2