aboutsummaryrefslogtreecommitdiffstats
path: root/benchmarks/polybench-syn/linear-algebra
diff options
context:
space:
mode:
Diffstat (limited to 'benchmarks/polybench-syn/linear-algebra')
-rw-r--r--benchmarks/polybench-syn/linear-algebra/blas/gemm.c111
-rw-r--r--benchmarks/polybench-syn/linear-algebra/blas/gemver.c152
-rw-r--r--benchmarks/polybench-syn/linear-algebra/blas/gesummv.c115
-rw-r--r--benchmarks/polybench-syn/linear-algebra/blas/symm.c110
-rw-r--r--benchmarks/polybench-syn/linear-algebra/blas/syr2k.c120
-rw-r--r--benchmarks/polybench-syn/linear-algebra/blas/syrk.c106
-rw-r--r--benchmarks/polybench-syn/linear-algebra/blas/trmm.c96
-rw-r--r--benchmarks/polybench-syn/linear-algebra/blas/trmm.preproc.c144
-rw-r--r--benchmarks/polybench-syn/linear-algebra/kernels/2mm.c128
-rw-r--r--benchmarks/polybench-syn/linear-algebra/kernels/3mm.c141
-rw-r--r--benchmarks/polybench-syn/linear-algebra/kernels/atas.c100
-rw-r--r--benchmarks/polybench-syn/linear-algebra/kernels/bicg.c115
-rw-r--r--benchmarks/polybench-syn/linear-algebra/kernels/doitgen.c100
-rw-r--r--benchmarks/polybench-syn/linear-algebra/kernels/mvt.c117
-rw-r--r--benchmarks/polybench-syn/linear-algebra/solvers/cholesky.c125
-rw-r--r--benchmarks/polybench-syn/linear-algebra/solvers/durbin.c102
-rw-r--r--benchmarks/polybench-syn/linear-algebra/solvers/lu.c148
-rw-r--r--benchmarks/polybench-syn/linear-algebra/solvers/ludcmp.c164
-rw-r--r--benchmarks/polybench-syn/linear-algebra/solvers/trisolv.c89
19 files changed, 0 insertions, 2283 deletions
diff --git a/benchmarks/polybench-syn/linear-algebra/blas/gemm.c b/benchmarks/polybench-syn/linear-algebra/blas/gemm.c
deleted file mode 100644
index 5a28f08..0000000
--- a/benchmarks/polybench-syn/linear-algebra/blas/gemm.c
+++ /dev/null
@@ -1,111 +0,0 @@
-/**
- * This version is stamped on May 10, 2016
- *
- * Contact:
- * Louis-Noel Pouchet <pouchet.ohio-state.edu>
- * Tomofumi Yuki <tomofumi.yuki.fr>
- *
- * Web address: http://polybench.sourceforge.net
- */
-/* gemm.c: this file is part of PolyBench/C */
-
-#define plus(i) i = i + ONE
-static
-void init_array(int ni, int nj, int nk,
- int *alpha,
- int *beta,
- int C[ 20 + 0][25 + 0],
- int A[ 20 + 0][30 + 0],
- int B[ 30 + 0][25 + 0])
-{
- int i, j;
- int ONE = 1;
-
- *alpha = 2;
- *beta = 2;
- for (i = 0; i < ni; plus(i))
- for (j = 0; j < nj; plus(j))
- C[i][j] = (int) ((i*j+ONE) % ni) / ni;
- for (i = 0; i < ni; plus(i))
- for (j = 0; j < nk; plus(j))
- A[i][j] = (int) (i*(j+ONE) % nk) / nk;
- for (i = 0; i < nk; plus(i))
- for (j = 0; j < nj; plus(j))
- B[i][j] = (int) (i*(j+ONE+ONE) % nj) / nj;
-}
-
-
-
-
-static
-int print_array(int ni, int nj,
- int C[ 20 + 0][25 + 0])
-{
- int i, j;
- int ONE = 1;
- int res = 0;
- for (i = 0; i < ni; plus(i))
- for (j = 0; j < nj; plus(j)) {
- res ^= C[i][j];
- }
- return res;
-}
-
-static
-void kernel_gemm(int ni, int nj, int nk,
- int alpha,
- int beta,
- int C[ 20 + 0][25 + 0],
- int A[ 20 + 0][30 + 0],
- int B[ 30 + 0][25 + 0])
-{
- int i, j, k;
- int ONE = 1;
-
-#pragma scop
- for (i = 0; i < ni; plus(i)) {
- for (j = 0; j < nj; plus(j))
- C[i][j] *= beta;
- for (k = 0; k < nk; plus(k)) {
- for (j = 0; j < nj; plus(j))
- C[i][j] += alpha * A[i][k] * B[k][j];
- }
- }
-#pragma endscop
-
-}
-
-
-int main()
-{
-
- int ni = 20;
- int nj = 25;
- int nk = 30;
-
-
- int alpha;
- int beta;
- int C[20 + 0][25 + 0];
- int A[20 + 0][30 + 0];
- int B[30 + 0][25 + 0];
-
-
- init_array (ni, nj, nk, &alpha, &beta,
- C,
- A,
- B);
-
-
- kernel_gemm (ni, nj, nk,
- alpha, beta,
- C,
- A,
- B);
-
-
- return
- print_array(ni, nj, C);
-
-
-}
diff --git a/benchmarks/polybench-syn/linear-algebra/blas/gemver.c b/benchmarks/polybench-syn/linear-algebra/blas/gemver.c
deleted file mode 100644
index a2711cb..0000000
--- a/benchmarks/polybench-syn/linear-algebra/blas/gemver.c
+++ /dev/null
@@ -1,152 +0,0 @@
-/**
- * This version is stamped on May 10, 2016
- *
- * Contact:
- * Louis-Noel Pouchet <pouchet.ohio-state.edu>
- * Tomofumi Yuki <tomofumi.yuki.fr>
- *
- * Web address: http://polybench.sourceforge.net
- */
-/* gemver.c: this file is part of PolyBench/C */
-
-#define plus(i) i = i + ONE
-static
-void init_array (int n,
- int *alpha,
- int *beta,
- int A[ 40 + 0][40 + 0],
- int u1[ 40 + 0],
- int v1[ 40 + 0],
- int u2[ 40 + 0],
- int v2[ 40 + 0],
- int w[ 40 + 0],
- int x[ 40 + 0],
- int y[ 40 + 0],
- int z[ 40 + 0])
-{
- int i, j;
- int ONE = 1;
-
- *alpha = 3;
- *beta = 2;
-
- int fn = (int)n;
-
- for (i = 0; i < n; plus(i))
- {
- u1[i] = i;
- u2[i] = ((i+ONE)/fn)/2;
- v1[i] = ((i+ONE)/fn)/4;
- v2[i] = ((i+ONE)/fn)/6;
- y[i] = ((i+ONE)/fn)/8;
- z[i] = ((i+ONE)/fn)/9;
- x[i] = 0;
- w[i] = 0;
- for (j = 0; j < n; plus(j))
- A[i][j] = (int) (i*j % n) / n;
- }
-}
-
-
-
-
-static
-int print_array(int n,
- int w[ 40 + 0])
-{
- int i;
- int ONE = 1;
- int res = 0;
-
- for (i = 0; i < n; plus(i)) {
- res ^= w[i];
- }
- return res;
-}
-
-
-
-
-static
-void kernel_gemver(int n,
- int alpha,
- int beta,
- int A[ 40 + 0][40 + 0],
- int u1[ 40 + 0],
- int v1[ 40 + 0],
- int u2[ 40 + 0],
- int v2[ 40 + 0],
- int w[ 40 + 0],
- int x[ 40 + 0],
- int y[ 40 + 0],
- int z[ 40 + 0])
-{
- int i, j;
- int ONE = 1;
-
-#pragma scop
-
- for (i = 0; i < n; plus(i))
- for (j = 0; j < n; plus(j))
- A[i][j] = A[i][j] + u1[i] * v1[j] + u2[i] * v2[j];
-
- for (i = 0; i < n; plus(i))
- for (j = 0; j < n; plus(j))
- x[i] = x[i] + beta * A[j][i] * y[j];
-
- for (i = 0; i < n; plus(i))
- x[i] = x[i] + z[i];
-
- for (i = 0; i < n; plus(i))
- for (j = 0; j < n; plus(j))
- w[i] = w[i] + alpha * A[i][j] * x[j];
-
-#pragma endscop
-}
-
-
-int main()
-{
-
- int n = 40;
-
-
- int alpha;
- int beta;
- int A[40 + 0][40 + 0];
- int u1[40 + 0];
- int v1[40 + 0];
- int u2[40 + 0];
- int v2[40 + 0];
- int w[40 + 0];
- int x[40 + 0];
- int y[40 + 0];
- int z[40 + 0];
-
-
-
- init_array (n, &alpha, &beta,
- A,
- u1,
- v1,
- u2,
- v2,
- w,
- x,
- y,
- z);
-
- kernel_gemver (n, alpha, beta,
- A,
- u1,
- v1,
- u2,
- v2,
- w,
- x,
- y,
- z);
-
- return print_array(n, w);
-
-}
diff --git a/benchmarks/polybench-syn/linear-algebra/blas/gesummv.c b/benchmarks/polybench-syn/linear-algebra/blas/gesummv.c
deleted file mode 100644
index 606a581..0000000
--- a/benchmarks/polybench-syn/linear-algebra/blas/gesummv.c
+++ /dev/null
@@ -1,115 +0,0 @@
-/**
- * This version is stamped on May 10, 2016
- *
- * Contact:
- * Louis-Noel Pouchet <pouchet.ohio-state.edu>
- * Tomofumi Yuki <tomofumi.yuki.fr>
- *
- * Web address: http://polybench.sourceforge.net
- */
-/* gesummv.c: this file is part of PolyBench/C */
-
-
-#define plus(i) i = i + ONE
-
-static
-void init_array(int n,
- int *alpha,
- int *beta,
- int A[ 30 + 0][30 + 0],
- int B[ 30 + 0][30 + 0],
- int x[ 30 + 0])
-{
- int i, j;
- int ONE = 1;
-
- *alpha = 3;
- *beta = 2;
- for (i = 0; i < n; plus(i))
- {
- x[i] = (int)( i % n) / n;
- for (j = 0; j < n; plus(j)) {
- A[i][j] = (int) ((i*j+ONE) % n) / n;
- B[i][j] = (int) ((i*j+ONE+ONE) % n) / n;
- }
- }
-}
-
-
-
-
-static
-int print_array(int n,
- int y[ 30 + 0])
-
-{
- int i;
- int ONE = 1;
- int res = 0;
-
- for (i = 0; i < n; plus(i)) {
- res ^= y[i];
- }
- return res;
-}
-
-static
-void kernel_gesummv(int n,
- int alpha,
- int beta,
- int A[ 30 + 0][30 + 0],
- int B[ 30 + 0][30 + 0],
- int tmp[ 30 + 0],
- int x[ 30 + 0],
- int y[ 30 + 0])
-{
- int i, j;
- int ONE = 1;
-
-#pragma scop
- for (i = 0; i < n; plus(i))
- {
- tmp[i] = 0;
- y[i] = 0;
- for (j = 0; j < n; plus(j))
- {
- tmp[i] = A[i][j] * x[j] + tmp[i];
- y[i] = B[i][j] * x[j] + y[i];
- }
- y[i] = alpha * tmp[i] + beta * y[i];
- }
-#pragma endscop
-
-}
-
-
-int main()
-{
-
- int n = 30;
-
-
- int alpha;
- int beta;
- int A[30 + 0][30 + 0];
- int B[30 + 0][30 + 0];
- int tmp[30 + 0];
- int x[30 + 0];
- int y[30 + 0];
-
- init_array (n, &alpha, &beta,
- A,
- B,
- x);
-
- kernel_gesummv (n, alpha, beta,
- A,
- B,
- tmp,
- x,
- y);
-
-
- return print_array(n, y);
-
-}
diff --git a/benchmarks/polybench-syn/linear-algebra/blas/symm.c b/benchmarks/polybench-syn/linear-algebra/blas/symm.c
deleted file mode 100644
index a5e8539..0000000
--- a/benchmarks/polybench-syn/linear-algebra/blas/symm.c
+++ /dev/null
@@ -1,110 +0,0 @@
-/**
- * This version is stamped on May 10, 2016
- *
- * Contact:
- * Louis-Noel Pouchet <pouchet.ohio-state.edu>
- * Tomofumi Yuki <tomofumi.yuki.fr>
- *
- * Web address: http://polybench.sourceforge.net
- */
-/* symm.c: this file is part of PolyBench/C */
-
-#define plus(i) i = i + ONE
-static
-void init_array(int m, int n,
- int *alpha,
- int *beta,
- int C[ 20 + 0][30 + 0],
- int A[ 20 + 0][20 + 0],
- int B[ 20 + 0][30 + 0])
-{
- int i, j;
- int ONE = 1;
- int HUND = 100;
-
- *alpha = 3;
- *beta = 2;
- for (i = 0; i < m; plus(i))
- for (j = 0; j < n; plus(j)) {
- C[i][j] = (int) ((i+j) % HUND) / m;
- B[i][j] = (int) ((n+i-j) % HUND) / m;
- }
- for (i = 0; i < m; plus(i)) {
- for (j = 0; j <=i; plus(j))
- A[i][j] = (int) ((i+j) % HUND) / m;
- for (j = i+ONE; j < m; plus(j))
- A[i][j] = -999;
- }
-}
-
-static
-int print_array(int m, int n,
- int C[ 20 + 0][30 + 0])
-{
- int i, j;
- int ONE = 1;
- int res = 0;
-
- for (i = 0; i < m; plus(i))
- for (j = 0; j < n; plus(j)) {
- res ^= C[i][j];
- }
- return res;
-}
-
-
-static
-void kernel_symm(int m, int n,
- int alpha,
- int beta,
- int C[ 20 + 0][30 + 0],
- int A[ 20 + 0][20 + 0],
- int B[ 20 + 0][30 + 0])
-{
- int ONE = 1;
- int i, j, k;
- int temp2;
-#pragma scop
- for (i = 0; i < m; plus(i))
- for (j = 0; j < n; plus(j) )
- {
- temp2 = 0;
- for (k = 0; k < i; plus(k)) {
- C[k][j] += alpha*B[i][j] * A[i][k];
- temp2 += B[k][j] * A[i][k];
- }
- C[i][j] = beta * C[i][j] + alpha*B[i][j] * A[i][i] + alpha * temp2;
- }
-#pragma endscop
-
-}
-
-
-int main()
-{
-
- int m = 20;
- int n = 30;
-
- int alpha;
- int beta;
- int C[20 + 0][30 + 0];
- int A[20 + 0][20 + 0];
- int B[20 + 0][30 + 0];
-
-
- init_array (m, n, &alpha, &beta,
- C,
- A,
- B);
-
- kernel_symm (m, n,
- alpha, beta,
- C,
- A,
- B);
-
- return
- print_array(m, n, C);
-
-}
diff --git a/benchmarks/polybench-syn/linear-algebra/blas/syr2k.c b/benchmarks/polybench-syn/linear-algebra/blas/syr2k.c
deleted file mode 100644
index 82b4d3b..0000000
--- a/benchmarks/polybench-syn/linear-algebra/blas/syr2k.c
+++ /dev/null
@@ -1,120 +0,0 @@
-/**
- * This version is stamped on May 10, 2016
- *
- * Contact:
- * Louis-Noel Pouchet <pouchet.ohio-state.edu>
- * Tomofumi Yuki <tomofumi.yuki.fr>
- *
- * Web address: http://polybench.sourceforge.net
- */
-/* syr2k.c: this file is part of PolyBench/C */
-
-
-#define plus(i) i = i + ONE
-static
-void init_array(int n, int m,
- int *alpha,
- int *beta,
- int C[ 30 + 0][30 + 0],
- int A[ 30 + 0][20 + 0],
- int B[ 30 + 0][20 + 0])
-{
- int i, j;
- int ONE = 1;
-
- *alpha = 3;
- *beta = 2;
- for (i = 0; i < n; plus(i))
- for (j = 0; j < m; plus(j)) {
- A[i][j] = (int) ((i*j+ONE)%n) / n;
- B[i][j] = (int) ((i*j+ONE+ONE)%m) / m;
- }
- for (i = 0; i < n; plus(i))
- for (j = 0; j < n; plus(j)) {
- C[i][j] = (int) ((i*j+4-ONE)%n) / m;
- }
-}
-
-
-
-
-static
-int print_array(int n,
- int C[ 30 + 0][30 + 0])
-{
- int i, j;
- int ONE = 1;
- int res = 0;
-
- for (i = 0; i < n; plus(i))
- for (j = 0; j < n; plus(j)) {
- res ^= C[i][j];
- }
- return res;
-}
-
-
-static
-void kernel_syr2k(int n, int m,
- int alpha,
- int beta,
- int C[ 30 + 0][30 + 0],
- int A[ 30 + 0][20 + 0],
- int B[ 30 + 0][20 + 0])
-{
- int i, j, k;
- int ONE = 1;
-
-#pragma scop
- for (i = 0; i < n; plus(i)) {
- for (j = 0; j <= i; plus(j))
- C[i][j] *= beta;
- for (k = 0; k < m; plus(k))
- for (j = 0; j <= i; plus(j))
- {
- C[i][j] += A[j][k]*alpha*B[i][k] + B[j][k]*alpha*A[i][k];
- }
- }
-#pragma endscop
-
-}
-
-
-int main()
-{
-
- int n = 30;
- int m = 20;
-
-
- int alpha;
- int beta;
- int C[30 + 0][30 + 0];
- int A[30 + 0][20 + 0];
- int B[30 + 0][20 + 0];
-
-
- init_array (n, m, &alpha, &beta,
- C,
- A,
- B);
-
-
- ;
-
-
- kernel_syr2k (n, m,
- alpha, beta,
- C,
- A,
- B);
-
-
- ;
- ;
-
-
-
- return print_array(n, C);
-
-}
diff --git a/benchmarks/polybench-syn/linear-algebra/blas/syrk.c b/benchmarks/polybench-syn/linear-algebra/blas/syrk.c
deleted file mode 100644
index dbf2e6b..0000000
--- a/benchmarks/polybench-syn/linear-algebra/blas/syrk.c
+++ /dev/null
@@ -1,106 +0,0 @@
-/**
- * This version is stamped on May 10, 2016
- *
- * Contact:
- * Louis-Noel Pouchet <pouchet.ohio-state.edu>
- * Tomofumi Yuki <tomofumi.yuki.fr>
- *
- * Web address: http://polybench.sourceforge.net
- */
-/* syrk.c: this file is part of PolyBench/C */
-
-
-#define plus(i) i = i + ONE
-static
-void init_array(int n, int m,
- int *alpha,
- int *beta,
- int C[ 30 + 0][30 + 0],
- int A[ 30 + 0][20 + 0])
-{
- int i, j;
- int ONE = 1;
-
- *alpha = 3;
- *beta = 2;
- for (i = 0; i < n; plus(i))
- for (j = 0; j < m; plus(j))
- A[i][j] = (int) ((i*j+ONE)%n) / n;
- for (i = 0; i < n; plus(i))
- for (j = 0; j < n; plus(j))
- C[i][j] = (int) ((i*j+ONE+ONE)%m) / m;
-}
-
-
-static
-int print_array(int n,
- int C[ 30 + 0][30 + 0])
-{
- int i, j;
- int ONE = 1;
- int res = 0;
-
- for (i = 0; i < n; plus(i))
- for (j = 0; j < n; plus(j)) {
- res ^= C[i][j];
- }
- return res;
-}
-
-
-
-
-static
-void kernel_syrk(int n, int m,
- int alpha,
- int beta,
- int C[ 30 + 0][30 + 0],
- int A[ 30 + 0][20 + 0])
-{
- int i, j, k;
- int ONE = 1;
-
-#pragma scop
- for (i = 0; i < n; plus(i)) {
- for (j = 0; j <= i; plus(j))
- C[i][j] *= beta;
- for (k = 0; k < m; plus(k)) {
- for (j = 0; j <= i; plus(j))
- C[i][j] += alpha * A[i][k] * A[j][k];
- }
- }
-#pragma endscop
-
-}
-
-
-int main()
-{
-
- int n = 30;
- int m = 20;
-
-
- int alpha;
- int beta;
- int C[30 + 0][30 + 0];
- int A[30 + 0][20 + 0];
-
-
- init_array (n, m, &alpha, &beta, C, A);
-
-
- ;
-
-
- kernel_syrk (n, m, alpha, beta, C, A);
-
-
- ;
- ;
-
-
-
- return print_array(n, C);
-
-}
diff --git a/benchmarks/polybench-syn/linear-algebra/blas/trmm.c b/benchmarks/polybench-syn/linear-algebra/blas/trmm.c
deleted file mode 100644
index 79b384d..0000000
--- a/benchmarks/polybench-syn/linear-algebra/blas/trmm.c
+++ /dev/null
@@ -1,96 +0,0 @@
-/**
- * This version is stamped on May 10, 2016
- *
- * Contact:
- * Louis-Noel Pouchet <pouchet.ohio-state.edu>
- * Tomofumi Yuki <tomofumi.yuki.fr>
- *
- * Web address: http://polybench.sourceforge.net
- */
-/* trmm.c: this file is part of PolyBench/C */
-
-
-#define plus(i) i = i + ONE
-static
-void init_array(int m, int n,
- int *alpha,
- int A[ 20 + 0][20 + 0],
- int B[ 20 + 0][30 + 0])
-{
- int i, j;
- int ONE = 1;
-
- *alpha = 3;
- for (i = 0; i < m; plus(i)) {
- for (j = 0; j < i; plus(j)) {
- A[i][j] = (int)((i+j) % m)/m;
- }
- A[i][i] = 1;
- for (j = 0; j < n; plus(j)) {
- B[i][j] = (int)((n+(i-j)) % n)/n;
- }
- }
-
-}
-
-
-
-
-static
-int print_array(int m, int n,
- int B[ 20 + 0][30 + 0])
-{
- int i, j;
- int ONE = 1;
- int res = 0;
-
- for (i = 0; i < m; plus(i))
- for (j = 0; j < n; plus(j)) {
- res ^= B[i][j];
- }
- return res;
-}
-
-
-
-
-static
-void kernel_trmm(int m, int n,
- int alpha,
- int A[ 20 + 0][20 + 0],
- int B[ 20 + 0][30 + 0])
-{
- int i, j, k;
- int ONE = 1;
-#pragma scop
- for (i = 0; i < m; plus(i))
- for (j = 0; j < n; plus(j)) {
- for (k = i+ONE; k < m; plus(k))
- B[i][j] += A[k][i] * B[k][j];
- B[i][j] = alpha * B[i][j];
- }
-#pragma endscop
-
-}
-
-
-int main()
-{
-
- int m = 20;
- int n = 30;
-
-
- int alpha;
- int A[20 + 0][20 + 0];
- int B[20 + 0][30 + 0];
-
-
- init_array (m, n, &alpha, A, B);
-
-
- kernel_trmm (m, n, alpha, A, B);
-
- return print_array(m, n, B);
-
-}
diff --git a/benchmarks/polybench-syn/linear-algebra/blas/trmm.preproc.c b/benchmarks/polybench-syn/linear-algebra/blas/trmm.preproc.c
deleted file mode 100644
index 9b8edfe..0000000
--- a/benchmarks/polybench-syn/linear-algebra/blas/trmm.preproc.c
+++ /dev/null
@@ -1,144 +0,0 @@
-/**
- * This version is stamped on May 10, 2016
- *
- * Contact:
- * Louis-Noel Pouchet <pouchet.ohio-state.edu>
- * Tomofumi Yuki <tomofumi.yuki.fr>
- *
- * Web address: http://polybench.sourceforge.net
- */
-/* trmm.c: this file is part of PolyBench/C */
-
-#include <stdio.h>
-#include <unistd.h>
-#include <string.h>
-#include <math.h>
-
-/* Include polybench common header. */
-#include<polybench.h>
-# 1 "trmm.c"
-# 1 "<built-in>" 1
-# 1 "<built-in>" 3
-# 362 "<built-in>" 3
-# 1 "<command line>" 1
-# 1 "<built-in>" 2
-# 1 "trmm.c" 2
-# 1 "utilities/polybench.h" 1
-# 30 "utilities/polybench.h"
-# 1 "/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/include/stdlib.h" 1 3 4
-# 31 "utilities/polybench.h" 2
-# 231 "utilities/polybench.h"
-extern void* polybench_alloc_data(unsigned long long int n, int elt_size);
-extern void polybench_free_data(void* ptr);
-
-
-
-
-extern void polybench_flush_cache();
-extern void polybench_prepare_instruments();
-# 2 "trmm.c" 2
-
-
-# 1 "./linear-algebra/blas/trmm/trmm.h" 1
-# 5 "trmm.c" 2
-
-
-
-static
-void init_array(int m, int n,
- int *alpha,
- int A[ 20 + 0][20 + 0],
- int B[ 20 + 0][30 + 0])
-{
- int i, j;
-
- *alpha = 1.5;
- for (i = 0; i < m; i++) {
- for (j = 0; j < i; j++) {
- A[i][j] = (int)((i+j) % m)/m;
- }
- A[i][i] = 1.0;
- for (j = 0; j < n; j++) {
- B[i][j] = (int)((n+(i-j)) % n)/n;
- }
- }
-
-}
-
-
-
-
-static
-void print_array(int m, int n,
- int B[ 20 + 0][30 + 0])
-{
- int i, j;
-
- fprintf(stderr, "==BEGIN DUMP_ARRAYS==\n");
- fprintf(stderr, "begin dump: %s", "B");
- for (i = 0; i < m; i++)
- for (j = 0; j < n; j++) {
- if ((i * m + j) % 20 == 0) fprintf (stderr, "\n");
- fprintf (stderr, "%d ", B[i][j]);
- }
- fprintf(stderr, "\nend dump: %s\n", "B");
- fprintf(stderr, "==END DUMP_ARRAYS==\n");
-}
-
-
-
-
-static
-void kernel_trmm(int m, int n,
- int alpha,
- int A[ 20 + 0][20 + 0],
- int B[ 20 + 0][30 + 0])
-{
- int i, j, k;
-# 68 "trmm.c"
-#pragma scop
- for (i = 0; i < m; i++)
- for (j = 0; j < n; j++) {
- for (k = i+1; k < m; k++)
- B[i][j] += A[k][i] * B[k][j];
- B[i][j] = alpha * B[i][j];
- }
-#pragma endscop
-
-}
-
-
-int main(int argc, char** argv)
-{
-
- int m = 20;
- int n = 30;
-
-
- int alpha;
- int (*A)[20 + 0][20 + 0]; A = (int(*)[20 + 0][20 + 0])polybench_alloc_data ((20 + 0) * (20 + 0), sizeof(int));;
- int (*B)[20 + 0][30 + 0]; B = (int(*)[20 + 0][30 + 0])polybench_alloc_data ((20 + 0) * (30 + 0), sizeof(int));;
-
-
- init_array (m, n, &alpha, *A, *B);
-
-
- ;
-
-
- kernel_trmm (m, n, alpha, *A, *B);
-
-
- ;
- ;
-
-
-
- if (argc > 42 && ! strcmp(argv[0], "")) print_array(m, n, *B);
-
-
- free((void*)A);;
- free((void*)B);;
-
- return 0;
-}
diff --git a/benchmarks/polybench-syn/linear-algebra/kernels/2mm.c b/benchmarks/polybench-syn/linear-algebra/kernels/2mm.c
deleted file mode 100644
index 391e9ac..0000000
--- a/benchmarks/polybench-syn/linear-algebra/kernels/2mm.c
+++ /dev/null
@@ -1,128 +0,0 @@
-/**
- * This version is stamped on May 10, 2016
- *
- * Contact:
- * Louis-Noel Pouchet <pouchet.ohio-state.edu>
- * Tomofumi Yuki <tomofumi.yuki.fr>
- *
- * Web address: http://polybench.sourceforge.net
- */
-/* 2mm.c: this file is part of PolyBench/C */
-
-
-#define plus(i) i = i + ONE
-static
-void init_array(int ni, int nj, int nk, int nl,
- int *alpha,
- int *beta,
- int A[ 16 + 0][22 + 0],
- int B[ 22 + 0][18 + 0],
- int C[ 18 + 0][24 + 0],
- int D[ 16 + 0][24 + 0])
-{
- int i, j;
- int ONE = 1;
-
- *alpha = 2;
- *beta = 2;
- for (i = 0; i < ni; plus(i))
- for (j = 0; j < nk; plus(j))
- A[i][j] = (int) ((i*j+ONE) % ni) / ni;
- for (i = 0; i < nk; plus(i))
- for (j = 0; j < nj; plus(j))
- B[i][j] = (int) (i*(j+ONE) % nj) / nj;
- for (i = 0; i < nj; plus(i))
- for (j = 0; j < nl; plus(j))
- C[i][j] = (int) ((i*(j+ONE+ONE+ONE)+ONE) % nl) / nl;
- for (i = 0; i < ni; plus(i))
- for (j = 0; j < nl; plus(j))
- D[i][j] = (int) (i*(j+ONE+ONE) % nk) / nk;
-}
-
-static
-int print_array(int ni, int nl,
- int D[ 16 + 0][24 + 0])
-{
- int i, j;
- int ONE = 1;
- int res = 0;
- for (i = 0; i < ni; plus(i))
- for (j = 0; j < nl; plus(j)) {
- res ^= D[i][j];
- }
- return res;
-}
-
-
-
-
-static
-void kernel_2mm(int ni, int nj, int nk, int nl,
- int alpha,
- int beta,
- int tmp[ 16 + 0][18 + 0],
- int A[ 16 + 0][22 + 0],
- int B[ 22 + 0][18 + 0],
- int C[ 18 + 0][24 + 0],
- int D[ 16 + 0][24 + 0])
-{
- int ONE = 1;
- int i, j, k;
-
-#pragma scop
-
- for (i = 0; i < ni; plus(i))
- for (j = 0; j < nj; plus(j))
- {
- tmp[i][j] = 0;
- for (k = 0; k < nk; plus(k))
- tmp[i][j] += alpha * A[i][k] * B[k][j];
- }
- for (i = 0; i < ni; plus(i))
- for (j = 0; j < nl; plus(j))
- {
- D[i][j] *= beta;
- for (k = 0; k < nj; plus(k))
- D[i][j] += tmp[i][k] * C[k][j];
- }
-#pragma endscop
-
-}
-
-
-int main()
-{
-
- int ni = 16;
- int nj = 18;
- int nk = 22;
- int nl = 24;
-
- int alpha;
- int beta;
- int tmp[16 + 0][18 + 0];
- int A[16 + 0][22 + 0];
- int B[22 + 0][18 + 0];
- int C[18 + 0][24 + 0];
- int D[16 + 0][24 + 0];
-
-
- init_array (ni, nj, nk, nl, &alpha, &beta,
- A,
- B,
- C,
- D);
-
-
- kernel_2mm (ni, nj, nk, nl,
- alpha, beta,
- tmp,
- A,
- B,
- C,
- D);
-
-
- return print_array(ni, nl, D);
-
-}
diff --git a/benchmarks/polybench-syn/linear-algebra/kernels/3mm.c b/benchmarks/polybench-syn/linear-algebra/kernels/3mm.c
deleted file mode 100644
index e565fb5..0000000
--- a/benchmarks/polybench-syn/linear-algebra/kernels/3mm.c
+++ /dev/null
@@ -1,141 +0,0 @@
-/**
- * This version is stamped on May 10, 2016
- *
- * Contact:
- * Louis-Noel Pouchet <pouchet.ohio-state.edu>
- * Tomofumi Yuki <tomofumi.yuki.fr>
- *
- * Web address: http://polybench.sourceforge.net
- */
-/* 3mm.c: this file is part of PolyBench/C */
-
-#define plus(i) i = i + ONE
-static
-void init_array(int ni, int nj, int nk, int nl, int nm,
- int A[ 16 + 0][20 + 0],
- int B[ 20 + 0][18 + 0],
- int C[ 18 + 0][24 + 0],
- int D[ 24 + 0][22 + 0])
-{
- int i, j;
- int ONE = 1;
- int TWO = 2;
- int THREE = 3;
- int FIVE = 5;
-
- for (i = 0; i < ni; plus(i))
- for (j = 0; j < nk; plus(j))
- A[i][j] = (int) ((i*j+ONE) % ni) / (5*ni);
- for (i = 0; i < nk; plus(i))
- for (j = 0; j < nj; plus(j))
- B[i][j] = (int) ((i*(j+ONE)+TWO) % nj) / (5*nj);
- for (i = 0; i < nj; plus(i))
- for (j = 0; j < nm; plus(j))
- C[i][j] = (int) (i*(j+THREE) % nl) / (5*nl);
- for (i = 0; i < nm; plus(i))
- for (j = 0; j < nl; plus(j))
- D[i][j] = (int) ((i*(j+TWO)+TWO) % nk) / (5*nk);
-}
-
-
-
-
-static
-int print_array(int ni, int nl,
- int G[ 16 + 0][22 + 0])
-{
- int i, j;
- int ONE = 1;
- int res = 0;
-
- for (i = 0; i < ni; plus(i))
- for (j = 0; j < nl; plus(j)) {
- res ^= G[i][j];
- }
- return res;
-}
-
-
-
-
-static
-void kernel_3mm(int ni, int nj, int nk, int nl, int nm,
- int E[ 16 + 0][18 + 0],
- int A[ 16 + 0][20 + 0],
- int B[ 20 + 0][18 + 0],
- int F[ 18 + 0][22 + 0],
- int C[ 18 + 0][24 + 0],
- int D[ 24 + 0][22 + 0],
- int G[ 16 + 0][22 + 0])
-{
- int ONE = 1;
- int i, j, k;
-
-#pragma scop
-
- for (i = 0; i < ni; plus(i))
- for (j = 0; j < nj; plus(j))
- {
- E[i][j] = 0;
- for (k = 0; k < nk; plus(k))
- E[i][j] += A[i][k] * B[k][j];
- }
-
- for (i = 0; i < nj; plus(i))
- for (j = 0; j < nl; plus(j))
- {
- F[i][j] = 0;
- for (k = 0; k < nm; plus(k))
- F[i][j] += C[i][k] * D[k][j];
- }
-
- for (i = 0; i < ni; plus(i))
- for (j = 0; j < nl; plus(j))
- {
- G[i][j] = 0;
- for (k = 0; k < nj; plus(k))
- G[i][j] += E[i][k] * F[k][j];
- }
-#pragma endscop
-
-}
-
-
-int main()
-{
-
- int ni = 16;
- int nj = 18;
- int nk = 20;
- int nl = 22;
- int nm = 24;
-
-
- int E[16 + 0][18 + 0];
- int A[16 + 0][20 + 0];
- int B[20 + 0][18 + 0];
- int F[18 + 0][22 + 0];
- int C[18 + 0][24 + 0];
- int D[24 + 0][22 + 0];
- int G[16 + 0][22 + 0];
-
-
- init_array (ni, nj, nk, nl, nm,
- A,
- B,
- C,
- D);
-
- kernel_3mm (ni, nj, nk, nl, nm,
- E,
- A,
- B,
- F,
- C,
- D,
- G);
-
-
- return print_array(ni, nl, G);
-
-}
diff --git a/benchmarks/polybench-syn/linear-algebra/kernels/atas.c b/benchmarks/polybench-syn/linear-algebra/kernels/atas.c
deleted file mode 100644
index a051046..0000000
--- a/benchmarks/polybench-syn/linear-algebra/kernels/atas.c
+++ /dev/null
@@ -1,100 +0,0 @@
-/**
- * This version is stamped on May 10, 2016
- *
- * Contact:
- * Louis-Noel Pouchet <pouchet.ohio-state.edu>
- * Tomofumi Yuki <tomofumi.yuki.fr>
- *
- * Web address: http://polybench.sourceforge.net
- */
-/* atax.c: this file is part of PolyBench/C */
-
-#define plus(i) i = i + ONE
-static
-void init_array (int m, int n,
- int A[ 38 + 0][42 + 0],
- int x[ 42 + 0])
-{
- int ONE = 1;
- int i, j;
- int fn;
- fn = (int)n;
-
- for (i = 0; i < n; plus(i))
- x[i] = ONE + (i / fn);
- for (i = 0; i < m; plus(i))
- for (j = 0; j < n; plus(j))
- A[i][j] = (int) ((i+j) % n) / (5*m);
-}
-
-
-
-
-static
-int print_array(int n,
- int y[ 42 + 0])
-
-{
- int i;
- int ONE = 1;
- int res = 0;
-
- for (i = 0; i < n; plus(i)) {
- res ^= y[i];
- }
- return res;
-}
-
-
-
-
-static
-void kernel_atax(int m, int n,
- int A[ 38 + 0][42 + 0],
- int x[ 42 + 0],
- int y[ 42 + 0],
- int tmp[ 38 + 0])
-{
- int i, j;
- int ONE = 1;
-
-#pragma scop
- for (i = 0; i < n; plus(i))
- y[i] = 0;
- for (i = 0; i < m; plus(i))
- {
- tmp[i] = 0;
- for (j = 0; j < n; plus(j))
- tmp[i] = tmp[i] + A[i][j] * x[j];
- for (j = 0; j < n; plus(j))
- y[j] = y[j] + A[i][j] * tmp[i];
- }
-#pragma endscop
-
-}
-
-
-int main()
-{
-
- int m = 38;
- int n = 42;
-
-
- int A[38 + 0][42 + 0];
- int x[42 + 0];
- int y[42 + 0];
- int tmp[38 + 0];
-
- init_array (m, n, A, x);
-
- kernel_atax (m, n,
- A,
- x,
- y,
- tmp);
-
-
- return print_array(n, y);
-
-}
diff --git a/benchmarks/polybench-syn/linear-algebra/kernels/bicg.c b/benchmarks/polybench-syn/linear-algebra/kernels/bicg.c
deleted file mode 100644
index 48b7658..0000000
--- a/benchmarks/polybench-syn/linear-algebra/kernels/bicg.c
+++ /dev/null
@@ -1,115 +0,0 @@
-/**
- * This version is stamped on May 10, 2016
- *
- * Contact:
- * Louis-Noel Pouchet <pouchet.ohio-state.edu>
- * Tomofumi Yuki <tomofumi.yuki.fr>
- *
- * Web address: http://polybench.sourceforge.net
- */
-/* bicg.c: this file is part of PolyBench/C */
-
-
-#define plus(i) i = i + ONE
-static
-void init_array (int m, int n,
- int A[ 42 + 0][38 + 0],
- int r[ 42 + 0],
- int p[ 38 + 0])
-{
- int i, j;
- int ONE = 1;
-
- for (i = 0; i < m; plus(i))
- p[i] = (int)(i % m) / m;
- for (i = 0; i < n; plus(i)) {
- r[i] = (int)(i % n) / n;
- for (j = 0; j < m; plus(j))
- A[i][j] = (int) (i*(j+ONE) % n)/n;
- }
-}
-
-
-
-
-static
-int print_array(int m, int n,
- int s[ 38 + 0],
- int q[ 42 + 0])
-
-{
- int i;
- int ONE = 1;
- int res = 0;
-
- for (i = 0; i < m; plus(i)) {
- res ^= s[i];
- }
- for (i = 0; i < n; plus(i)) {
- res ^= q[i];
- }
- return res;
-}
-
-
-
-
-static
-void kernel_bicg(int m, int n,
- int A[ 42 + 0][38 + 0],
- int s[ 38 + 0],
- int q[ 42 + 0],
- int p[ 38 + 0],
- int r[ 42 + 0])
-{
- int i, j;
- int ONE = 1;
-
-#pragma scop
- for (i = 0; i < m; plus(i))
- s[i] = 0;
- for (i = 0; i < n; plus(i))
- {
- q[i] = 0;
- for (j = 0; j < m; plus(j))
- {
- s[j] = s[j] + r[i] * A[i][j];
- q[i] = q[i] + A[i][j] * p[j];
- }
- }
-#pragma endscop
-
-}
-
-
-int main()
-{
-
- int n = 42;
- int m = 38;
-
-
- int A[42 + 0][38 + 0];
- int s[38 + 0];
- int q[42 + 0];
- int p[38 + 0];
- int r[42 + 0];
-
-
- init_array (m, n,
- A,
- r,
- p);
-
- kernel_bicg (m, n,
- A,
- s,
- q,
- p,
- r);
-
-
- return print_array(m, n, s, q);
-
-
-}
diff --git a/benchmarks/polybench-syn/linear-algebra/kernels/doitgen.c b/benchmarks/polybench-syn/linear-algebra/kernels/doitgen.c
deleted file mode 100644
index 20de1df..0000000
--- a/benchmarks/polybench-syn/linear-algebra/kernels/doitgen.c
+++ /dev/null
@@ -1,100 +0,0 @@
-/**
- * This version is stamped on May 10, 2016
- *
- * Contact:
- * Louis-Noel Pouchet <pouchet.ohio-state.edu>
- * Tomofumi Yuki <tomofumi.yuki.fr>
- *
- * Web address: http://polybench.sourceforge.net
- */
-/* doitgen.c: this file is part of PolyBench/C */
-
-#define plus(i) i = i + ONE
-static
-void init_array(int nr, int nq, int np,
- int A[ 10 + 0][8 + 0][12 + 0],
- int C4[ 12 + 0][12 + 0])
-{
- int i, j, k;
- int ONE = 1;
-
- for (i = 0; i < nr; plus(i))
- for (j = 0; j < nq; plus(j))
- for (k = 0; k < np; plus(k))
- A[i][j][k] = (int) ((i*j + k)%np) / np;
- for (i = 0; i < np; plus(i))
- for (j = 0; j < np; plus(j))
- C4[i][j] = (int) (i*j % np) / np;
-}
-
-
-static
-int print_array(int nr, int nq, int np,
- int A[ 10 + 0][8 + 0][12 + 0])
-{
- int i, j, k;
- int ONE = 1;
- int res = 0;
-
- for (i = 0; i < nr; plus(i))
- for (j = 0; j < nq; plus(j))
- for (k = 0; k < np; plus(k)) {
- res ^= A[i][j][k];
- }
- return res;
-}
-
-
-
-
-void kernel_doitgen(int nr, int nq, int np,
- int A[ 10 + 0][8 + 0][12 + 0],
- int C4[ 12 + 0][12 + 0],
- int sum[ 12 + 0])
-{
- int r, q, p, s;
- int ONE = 1;
-
-#pragma scop
- for (r = 0; r < nr; plus(r))
- for (q = 0; q < nq; plus(q)) {
- for (p = 0; p < np; plus(p)) {
- sum[p] = 0;
- for (s = 0; s < np; plus(s))
- sum[p] += A[r][q][s] * C4[s][p];
- }
- for (p = 0; p < np; plus(p))
- A[r][q][p] = sum[p];
- }
-#pragma endscop
-
-}
-
-
-int main()
-{
-
- int nr = 10;
- int nq = 8;
- int np = 12;
-
-
- int A[10 + 0][8 + 0][12 + 0];
- int sum[12 + 0];
- int C4[12 + 0][12 + 0];
-
-
- init_array (nr, nq, np,
- A,
- C4);
-
-
- kernel_doitgen (nr, nq, np,
- A,
- C4,
- sum);
-
-
-
- return print_array(nr, nq, np, A);
-}
diff --git a/benchmarks/polybench-syn/linear-algebra/kernels/mvt.c b/benchmarks/polybench-syn/linear-algebra/kernels/mvt.c
deleted file mode 100644
index aa68b1c..0000000
--- a/benchmarks/polybench-syn/linear-algebra/kernels/mvt.c
+++ /dev/null
@@ -1,117 +0,0 @@
-/**
- * This version is stamped on May 10, 2016
- *
- * Contact:
- * Louis-Noel Pouchet <pouchet.ohio-state.edu>
- * Tomofumi Yuki <tomofumi.yuki.fr>
- *
- * Web address: http://polybench.sourceforge.net
- */
-/* mvt.c: this file is part of PolyBench/C */
-
-#define plus(i) i = i + ONE
-
-static
-void init_array(int n,
- int x1[ 40 + 0],
- int x2[ 40 + 0],
- int y_1[ 40 + 0],
- int y_2[ 40 + 0],
- int A[ 40 + 0][40 + 0])
-{
- int i, j;
- int ONE = 1;
- int THREE = 3;
-
- for (i = 0; i < n; plus(i))
- {
- x1[i] = (int) (i % n) / n;
- x2[i] = (int) ((i + ONE) % n) / n;
- y_1[i] = (int) ((i + THREE) % n) / n;
- y_2[i] = (int) ((i + 4) % n) / n;
- for (j = 0; j < n; plus(j))
- A[i][j] = (int) (i*j % n) / n;
- }
-}
-
-
-
-
-static
-int print_array(int n,
- int x1[ 40 + 0],
- int x2[ 40 + 0])
-
-{
- int i;
- int ONE = 1;
- int res = 0;
-
- for (i = 0; i < n; plus(i)) {
- res ^= x1[i];
- }
-
- for (i = 0; i < n; plus(i)) {
- res ^= x2[i];
- }
- return res;
-}
-
-
-
-
-static
-void kernel_mvt(int n,
- int x1[ 40 + 0],
- int x2[ 40 + 0],
- int y_1[ 40 + 0],
- int y_2[ 40 + 0],
- int A[ 40 + 0][40 + 0])
-{
- int i, j;
- int ONE = 1;
-
-#pragma scop
- for (i = 0; i < n; plus(i))
- for (j = 0; j < n; plus(j))
- x1[i] = x1[i] + A[i][j] * y_1[j];
- for (i = 0; i < n; plus(i))
- for (j = 0; j < n; plus(j))
- x2[i] = x2[i] + A[j][i] * y_2[j];
-#pragma endscop
-
-}
-
-
-int main()
-{
-
- int n = 40;
-
-
- int A[40 + 0][40 + 0];
- int x1[40 + 0];
- int x2[40 + 0];
- int y_1[40 + 0];
- int y_2[40 + 0];
-
-
-
- init_array (n,
- x1,
- x2,
- y_1,
- y_2,
- A);
-
-
- kernel_mvt (n,
- x1,
- x2,
- y_1,
- y_2,
- A);
-
- return print_array(n, x1, x2);
-
-}
diff --git a/benchmarks/polybench-syn/linear-algebra/solvers/cholesky.c b/benchmarks/polybench-syn/linear-algebra/solvers/cholesky.c
deleted file mode 100644
index 264251d..0000000
--- a/benchmarks/polybench-syn/linear-algebra/solvers/cholesky.c
+++ /dev/null
@@ -1,125 +0,0 @@
-/**
- * This version is stamped on May 10, 2016
- *
- * Contact:
- * Louis-Noel Pouchet <pouchet.ohio-state.edu>
- * Tomofumi Yuki <tomofumi.yuki.fr>
- *
- * Web address: http://polybench.sourceforge.net
- */
-/* cholesky.c: this file is part of PolyBench/C */
-
-#include <stdio.h>
-
-# define SQRT_FUN(x) sqrtf(x)
-
-#define plus(i) i = i + ONE
-static
-void init_array(int n,
- int A[40][40])
-{
- int i, j;
- int ONE = 1;
-
- for (i = 0; i < n; plus(i))
- {
- for (j = 0; j <= i; plus(j))
- A[i][j] = (int)(-j % n) / n + ONE;
- for (j = i + ONE; j < n; plus(j)) {
- A[i][j] = 0;
- }
- A[i][i] = 1;
- }
-
-
- int r,s,t;
- int B[40][40];
- for (r = 0; r < n; ++r)
- for (s = 0; s < n; ++s)
- B[r][s] = 0;
- for (t = 0; t < n; ++t)
- for (r = 0; r < n; ++r)
- for (s = 0; s < n; ++s)
- B[r][s] += A[r][t] * A[s][t];
- for (r = 0; r < n; ++r)
- for (s = 0; s < n; ++s)
- A[r][s] = B[r][s];
-
-}
-
-
-
-
-static
-int check_array(int n,
- int A[40][40])
-
-{
- int res = 0;
- int ONE = 1;
- int i, j;
-
- for (i = 0; i < n; plus(i))
- for (j = 0; j <= i; plus(j)) {
- if(A[i][j]!=0) res = 1;
- }
- return res;
-}
-
-
-
-
-static
-void kernel_cholesky(int n,
- int A[40][40])
-{
- int i, j, k;
- int ONE = 1;
-
-#pragma scop
- for (i = 0; i < n; plus(i)) {
-
- for (j = 0; j < i; plus(j)) {
- for (k = 0; k < j; plus(k)) {
- A[i][j] -= A[i][k] * A[j][k];
- }
- A[i][j] /= A[j][j];
- }
-
- for (k = 0; k < i; plus(k)) {
- A[i][i] -= A[i][k] * A[i][k];
- }
- int sq = 0; int val = 0; int cmp = A[i][i];
- printf("cmp %d\n",cmp);
- while(sq <= cmp) {
- val = val + ONE;
- sq = val * val;
- }
- printf("val %d\n",val);
- A[i][i] = val;
- }
-#pragma endscop
-
-}
-
-
-int main(int argc, char** argv)
-{
-
- int n = 40;
-
-
- int A[40][40];
-
-
- //init_array (n, A);
-
-
- kernel_cholesky (n, A);
-
-
- return check_array(n, A);
-
-
- return 0;
-}
diff --git a/benchmarks/polybench-syn/linear-algebra/solvers/durbin.c b/benchmarks/polybench-syn/linear-algebra/solvers/durbin.c
deleted file mode 100644
index 677c23c..0000000
--- a/benchmarks/polybench-syn/linear-algebra/solvers/durbin.c
+++ /dev/null
@@ -1,102 +0,0 @@
-/**
- * This version is stamped on May 10, 2016
- *
- * Contact:
- * Louis-Noel Pouchet <pouchet.ohio-state.edu>
- * Tomofumi Yuki <tomofumi.yuki.fr>
- *
- * Web address: http://polybench.sourceforge.net
- */
-/* durbin.c: this file is part of PolyBench/C */
-
-
-#define plus(i) i = i + ONE
-/* Include polybench common header. */
-static
-void init_array (int n,
- int r[ 40 + 0])
-{
- int ONE = 1;
- int i, j;
-
- for (i = 0; i < n; plus(i))
- {
- r[i] = (n+ONE-i);
- }
-}
-
-
-
-static
-int print_array(int n,
- int y[ 40 + 0])
-
-{
- int ONE = 1;
- int i;
- int res = 0;
-
- for (i = 0; i < n; plus(i)) {
- res += y[i];
- }
- return res;
-}
-
-static
-void kernel_durbin(int n,
- int r[ 40 + 0],
- int y[ 40 + 0])
-{
- int z[40];
- int alpha;
- int beta;
- int sum;
-
- int ONE = 1;
- int i,k;
-
-#pragma scop
- y[0] = -r[0];
- beta = 1;
- alpha = -r[0];
-
- for (k = 1; k < n; plus(k)) {
- beta = (ONE-alpha*alpha)*beta;
- sum = 0;
- for (i=0; i<k; plus(i)) {
- sum += r[k-i-ONE]*y[i];
- }
- alpha = - (r[k] + sum)/beta;
-
- for (i=0; i<k; plus(i)) {
- z[i] = y[i] + alpha*y[k-i-ONE];
- }
- for (i=0; i<k; plus(i)) {
- y[i] = z[i];
- }
- y[k] = alpha;
- }
-#pragma endscop
-
-}
-
-
-int main()
-{
-
- int n = 40;
-
-
- int r[40 + 0];
- int y[40 + 0];
-
-
- init_array (n, r);
-
- kernel_durbin (n,
- r,
- y);
-
- return print_array(n, y);
-
-}
diff --git a/benchmarks/polybench-syn/linear-algebra/solvers/lu.c b/benchmarks/polybench-syn/linear-algebra/solvers/lu.c
deleted file mode 100644
index 1cf07ea..0000000
--- a/benchmarks/polybench-syn/linear-algebra/solvers/lu.c
+++ /dev/null
@@ -1,148 +0,0 @@
-/**
- * This version is stamped on May 10, 2016
- *
- * Contact:
- * Louis-Noel Pouchet <pouchet.ohio-state.edu>
- * Tomofumi Yuki <tomofumi.yuki.fr>
- *
- * Web address: http://polybench.sourceforge.net
- */
-/* lu.c: this file is part of PolyBench/C */
-
-//#include <stdio.h>
-//#include <unistd.h>
-//#include <string.h>
-//#include <math.h>
-
-#define plus(i) i = i + ONE
-
-static
-void init_array (int n,
- int A[40][40])
-{
- int ONE = 1;
- int i, j;
-
- for (i = 0; i < n; plus(i))
- {
- for (j = 0; j <= i; plus(j))
- A[i][j] = (int)(-j % n) / n + ONE;
- for (j = plus(i); j < n; plus(j)) {
- A[i][j] = 0;
- }
- A[i][i] = 1;
- }
-
-
-
- int r,s,t;
- int B[40][40]; // B = (int(*)[40 + 0][40 + 0])polybench_alloc_data ((40 + 0) * (40 + 0), sizeof(int));;
- for (r = 0; r < n; plus(r))
- for (s = 0; s < n; plus(s))
- B[r][s] = 0;
- for (t = 0; t < n; plus(t))
- for (r = 0; r < n; plus(r))
- for (s = 0; s < n; plus(s))
- B[r][s] += A[r][t] * A[s][t];
- for (r = 0; r < n; plus(r))
- for (s = 0; s < n; plus(s))
- A[r][s] = B[r][s];
- //free((void*)B);;
-
-}
-
-
-
-/*
-static
-void print_array(int n,
- int A[ 40 + 0][40 + 0])
-
-{
- int i, j;
-
- fprintf(stderr, "==BEGIN DUMP_ARRAYS==\n");
- fprintf(stderr, "begin dump: %s", "A");
- for (i = 0; i < n; i++)
- for (j = 0; j < n; j++) {
- if ((i * n + j) % 20 == 0) fprintf (stderr, "\n");
- fprintf (stderr, "%d ", A[i][j]);
- }
- fprintf(stderr, "\nend dump: %s\n", "A");
- fprintf(stderr, "==END DUMP_ARRAYS==\n");
-}
-*/
-
-
-
-static
-void kernel_lu(int n,
- int A[ 40][40])
-{
- int i, j, k;
- int ONE = 1;
-
-#pragma scop
- for (i = 0; i < n; plus(i)) {
- for (j = 0; j <i; plus(j)) {
- for (k = 0; k < j; plus(k)) {
- A[i][j] -= A[i][k] * A[k][j];
- }
- A[i][j] /= A[j][j];
- }
- for (j = i; j < n; plus(j)) {
- for (k = 0; k < i; plus(k)) {
- A[i][j] -= A[i][k] * A[k][j];
- }
- }
- }
-#pragma endscop
-}
-
-static
-int check_array(int n,
- int A[40][40])
-{
- int res = 0;
- int i, j;
- int ONE = 1;
-
- for (i = 0; i < n; plus(i))
- for (j = 0; j < n; plus(j))
- if(A[i][j] !=0) res = 1;
-
- return res;
-}
-
-
-int main()
-{
-
- int n = 40;
-
-
- int A[40][40]; //A = (int(*)[40 + 0][40 + 0])polybench_alloc_data ((40 + 0) * (40 + 0), sizeof(int));;
-
-
- init_array (n, A);
-
-
-
- //print_array(n, A);
- // polybench_timer_start();;
-
-
- kernel_lu (n, A);
-
-
- // polybench_timer_stop();;
- // polybench_timer_print();;
-
-
-
- //if (argc > 42 && ! strcmp(argv[0], ""))
- return check_array(n, A);
- return 0;
-
- //free((void*)A);;
-}
diff --git a/benchmarks/polybench-syn/linear-algebra/solvers/ludcmp.c b/benchmarks/polybench-syn/linear-algebra/solvers/ludcmp.c
deleted file mode 100644
index e85316a..0000000
--- a/benchmarks/polybench-syn/linear-algebra/solvers/ludcmp.c
+++ /dev/null
@@ -1,164 +0,0 @@
-/**
- * This version is stamped on May 10, 2016
- *
- * Contact:
- * Louis-Noel Pouchet <pouchet.ohio-state.edu>
- * Tomofumi Yuki <tomofumi.yuki.fr>
- *
- * Web address: http://polybench.sourceforge.net
- */
-/* ludcmp.c: this file is part of PolyBench/C */
-
-#define plus(i) i = i + ONE
-
-static
-void init_array (int n,
- int A[ 40 + 0][40 + 0],
- int b[ 40 + 0],
- int x[ 40 + 0],
- int y[ 40 + 0])
-{
- int i, j;
- int ONE = 1;
- int TWO = 2;
- int FOUR = 4;
- int fn = (int)n;
-
- for (i = 0; i < n; plus(i))
- {
- x[i] = 0;
- y[i] = 0;
- b[i] = (i+ONE)/fn/(TWO) + (FOUR);
- }
-
- for (i = 0; i < n; plus(i))
- {
- for (j = 0; j <= i; plus(j))
- A[i][j] = (int)(-j % n) / n + ONE;
- for (j = i+ONE; j < n; plus(j)) {
- A[i][j] = 0;
- }
- A[i][i] = 1;
- }
-
-
-
- int r,s,t;
- int B[40 + 0][40 + 0];
- for (r = 0; r < n; plus(r))
- for (s = 0; s < n; plus(s))
- B[r][s] = 0;
- for (t = 0; t < n; plus(t))
- for (r = 0; r < n; plus(r))
- for (s = 0; s < n; plus(s))
- B[r][s] += A[r][t] * A[s][t];
- for (r = 0; r < n; plus(r))
- for (s = 0; s < n; plus(s))
- A[r][s] = B[r][s];
-
-}
-
-
-
-
-static
-int check_array(int n,
- int x[ 40 + 0])
-
-{
- int i;
- int ONE = 1;
- int res = 0;
-
- for (i = 0; i < n; plus(i)) {
- res += x[i];
- }
- return res;
-}
-
-
-
-
-static
-void kernel_ludcmp(int n,
- int A[ 40 + 0][40 + 0],
- int b[ 40 + 0],
- int x[ 40 + 0],
- int y[ 40 + 0])
-{
- int i, j, k;
- int ONE = 1;
-
- int w;
-
-#pragma scop
- for (i = 0; i < n; plus(i)) {
- for (j = 0; j <i; plus(j)) {
- w = A[i][j];
- for (k = 0; k < j; plus(k)) {
- w -= A[i][k] * A[k][j];
- }
- A[i][j] = w / A[j][j];
- }
- for (j = i; j < n; plus(j)) {
- w = A[i][j];
- for (k = 0; k < i; plus(k)) {
- w -= A[i][k] * A[k][j];
- }
- A[i][j] = w;
- }
- }
-
- for (i = 0; i < n; plus(i)) {
- w = b[i];
- for (j = 0; j < i; plus(j))
- w -= A[i][j] * y[j];
- y[i] = w;
- }
-
- for (i = n-ONE; i >=0; i=i-ONE) {
- w = y[i];
- for (j = i+ONE; j < n; plus(j))
- w -= A[i][j] * x[j];
- x[i] = w / A[i][i];
- }
-#pragma endscop
-
-}
-
-
-int main()
-{
-
- int n = 40;
- int ONE = 1;
-
-
- int A[40 + 0][40 + 0];
- int b[40 + 0];
- int x[40 + 0];
- int y[40 + 0];
-
-
-
- init_array (n,
- A,
- b,
- x,
- y);
-
-
- ;
-
-
- kernel_ludcmp (n,
- A,
- b,
- x,
- y);
-
- return check_array(n, x);
-
-
- return 0;
-}
diff --git a/benchmarks/polybench-syn/linear-algebra/solvers/trisolv.c b/benchmarks/polybench-syn/linear-algebra/solvers/trisolv.c
deleted file mode 100644
index 5e760e6..0000000
--- a/benchmarks/polybench-syn/linear-algebra/solvers/trisolv.c
+++ /dev/null
@@ -1,89 +0,0 @@
-/**
- * This version is stamped on May 10, 2016
- *
- * Contact:
- * Louis-Noel Pouchet <pouchet.ohio-state.edu>
- * Tomofumi Yuki <tomofumi.yuki.fr>
- *
- * Web address: http://polybench.sourceforge.net
- */
-/* trisolv.c: this file is part of PolyBench/C */
-
-#define plus(i) i = i + ONE
-static
-void init_array(int n,
- int L[ 40 ][40 ],
- int x[ 40 ],
- int b[ 40 ])
-{
- int i, j;
- int ONE = 1;
-
- for (i = 0; i < n; plus(i))
- {
- x[i] = - 999;
- b[i] = i ;
- for (j = 0; j <= i; plus(j))
- L[i][j] = (int) (i+n-j+ONE)*(ONE+ONE)/n;
- }
-}
-
-
-
-
-static
-int check_array(int n,
- int x[ 40])
-
-{
- int i;
- int res = 0;
- int ONE = 1;
- for (i = 0; i < n; plus(i)) {
- res += x[i];
- }
- return res;
-}
-
-
-
-
-static
-void kernel_trisolv(int n,
- int L[ 40 + 0][40 + 0],
- int x[ 40 + 0],
- int b[ 40 + 0])
-{
- int i, j;
- int ONE = 1;
-
-#pragma scop
- for (i = 0; i < n; plus(i))
- {
- x[i] = b[i];
- for (j = 0; j <i; plus(j))
- x[i] -= L[i][j] * x[j];
- x[i] = x[i] / L[i][i];
- }
-#pragma endscop
-
-}
-
-
-int main()
-{
-
- int n = 40;
-
-
- int L[40 + 0][40 + 0];
- int x[40 + 0];
- int b[40 + 0];
-
- init_array (n, L, x, b);
- kernel_trisolv (n, L, x, b);
-
- return check_array(n, x);
-
- return 0;
-}