From 2f5aedb202bdfb860152f25932c6df40100801bc Mon Sep 17 00:00:00 2001 From: Nadesh Ramanathan Date: Thu, 19 Nov 2020 22:36:16 +0000 Subject: fixing adi --- benchmarks/polybench-syn/benchmark-list-master | 1 + benchmarks/polybench-syn/stencils/adi.c | 33 +++++++++++++------------- benchmarks/polybench-syn/stencils/fdtd-2d.c | 5 ---- 3 files changed, 18 insertions(+), 21 deletions(-) (limited to 'benchmarks') diff --git a/benchmarks/polybench-syn/benchmark-list-master b/benchmarks/polybench-syn/benchmark-list-master index 142c7c6..ef0d0d0 100644 --- a/benchmarks/polybench-syn/benchmark-list-master +++ b/benchmarks/polybench-syn/benchmark-list-master @@ -1,3 +1,4 @@ +stencils/adi stencils/heat-3d stencils/fdtd-2d stencils/jacobi-1d diff --git a/benchmarks/polybench-syn/stencils/adi.c b/benchmarks/polybench-syn/stencils/adi.c index a424dec..ec2bf2a 100644 --- a/benchmarks/polybench-syn/stencils/adi.c +++ b/benchmarks/polybench-syn/stencils/adi.c @@ -11,7 +11,12 @@ #include "../include/misc.h" +#ifndef SYNTHESIS +#include +#endif + #define plus(i) i = i + ONE + static void init_array (int n, int u[ 20 + 0][20 + 0]) @@ -21,7 +26,7 @@ void init_array (int n, for (i = 0; i < n; i++) for (j = 0; j < n; j++) { - u[i][j] = (int)(i + n-j) / n; + u[i][j] = divider((int)(i + n-j) ,n); } } @@ -40,6 +45,10 @@ int print_array(int n, for (j = 0; j < n; j++) { res ^= u[i][j]; } +#ifndef SYNTHESIS + printf("finished: %u\n", res); +#endif + return res; } static @@ -50,20 +59,14 @@ void kernel_adi(int tsteps, int n, int q[ 20 + 0][20 + 0]) { int t, i, j; - int DX, DY, DT; int B1, B2; int mul1, mul2; int a, b, c, d, e, f; -#pragma scop - - DX = 1/(int)n; - DY = 1/(int)n; - DT = 1/(int)tsteps; B1 = 2; B2 = 1; - mul1 = B1 * DT / (DX * DX); - mul2 = B2 * DT / (DY * DY); + mul1 = divider(B1 * n * n, tsteps); + mul2 = divider(B2 * n * n, tsteps); a = -(sdivider(mul1,2)); b = 1+mul1; @@ -73,15 +76,15 @@ void kernel_adi(int tsteps, int n, f = d; int ZERO = 0; - for (t=1; t<=tsteps; t++) { + for (t=1; t<=tsteps; t++) { for (i=1; i=1; j--) { @@ -104,10 +107,8 @@ void kernel_adi(int tsteps, int n, } } } -#pragma endscop } - int main() { diff --git a/benchmarks/polybench-syn/stencils/fdtd-2d.c b/benchmarks/polybench-syn/stencils/fdtd-2d.c index d92183e..626bb05 100644 --- a/benchmarks/polybench-syn/stencils/fdtd-2d.c +++ b/benchmarks/polybench-syn/stencils/fdtd-2d.c @@ -13,11 +13,6 @@ #include #endif -#ifndef SYNTHESIS -#include -#endif - - #include "../include/misc.h" #define plus(i) i = i + ONE -- cgit