summaryrefslogtreecommitdiffstats
path: root/SD-VBS/common/c/ifMtimes.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/ifMtimes.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/ifMtimes.c')
-rw-r--r--SD-VBS/common/c/ifMtimes.c38
1 files changed, 38 insertions, 0 deletions
diff --git a/SD-VBS/common/c/ifMtimes.c b/SD-VBS/common/c/ifMtimes.c
new file mode 100644
index 0000000..15b3631
--- /dev/null
+++ b/SD-VBS/common/c/ifMtimes.c
@@ -0,0 +1,38 @@
1/********************************
2Author: Sravanthi Kota Venkata
3********************************/
4
5#include "sdvbs_common.h"
6
7F2D* ifMtimes(I2D* a, F2D* b)
8{
9 F2D *out;
10 int m, p, p1, n, i, j, k;
11 float temp;
12
13 m = a->height;
14 p = a->width;
15
16 p1 = b->height;
17 n = b->width;
18
19 out = fMallocHandle(m,n);
20
21 for(i=0; i<m; i++)
22 {
23 for(j=0; j<n; j++)
24 {
25 temp = 0;
26 for(k=0; k<p; k++)
27 {
28 temp += subsref(b,k,j) * subsref(a,i,k);
29 }
30 subsref(out,i,j) = temp;
31 }
32 }
33
34 return out;
35}
36
37
38