From c676092e38d00cf12ea5a063ca3ab8c5bb50f659 Mon Sep 17 00:00:00 2001 From: Nadesh Ramanathan Date: Mon, 9 Nov 2020 22:31:03 +0000 Subject: a script to execute polybench on vericert --- benchmarks/polybench-syn/benchmark-list-master | 28 ++++++++++++++++++++++++++ benchmarks/polybench-syn/run-vericert.sh | 25 +++++++++++++++++++++++ 2 files changed, 53 insertions(+) create mode 100644 benchmarks/polybench-syn/benchmark-list-master create mode 100755 benchmarks/polybench-syn/run-vericert.sh (limited to 'benchmarks') diff --git a/benchmarks/polybench-syn/benchmark-list-master b/benchmarks/polybench-syn/benchmark-list-master new file mode 100644 index 0000000..171a1c0 --- /dev/null +++ b/benchmarks/polybench-syn/benchmark-list-master @@ -0,0 +1,28 @@ +stencils/heat-3d +stencils/fdtd-2d +stencils/jacobi-1d +stencils/seidel-2d +stencils/adi +stencils/jacobi-2d +medley/nussinov +medley/floyd-warshall +linear-algebra/kernels/3mm +linear-algebra/kernels/2mm +linear-algebra/kernels/doitgen +linear-algebra/kernels/bicg +linear-algebra/kernels/mvt +linear-algebra/kernels/atas +linear-algebra/blas/syrk +linear-algebra/blas/gemver +linear-algebra/blas/symm +linear-algebra/blas/gesummv +linear-algebra/blas/gemm +linear-algebra/blas/trmm +linear-algebra/blas/syr2k +linear-algebra/blas/trmm.preproc +linear-algebra/solvers/cholesky +linear-algebra/solvers/trisolv +linear-algebra/solvers/lu +linear-algebra/solvers/ludcmp +linear-algebra/solvers/durbin +data-mining/covariance diff --git a/benchmarks/polybench-syn/run-vericert.sh b/benchmarks/polybench-syn/run-vericert.sh new file mode 100755 index 0000000..38b425f --- /dev/null +++ b/benchmarks/polybench-syn/run-vericert.sh @@ -0,0 +1,25 @@ +#! /bin/bash + +top=$(pwd) + #set up +while read benchmark ; do + echo "Running "$benchmark + gcc $benchmark.c -o $benchmark.o + ./$benchmark.o + cresult=$(echo $?) + echo "C output: "$cresult + ../../bin/vericert --debug-hls $benchmark.c -o $benchmark.v + iverilog -o $benchmark.iver -- $benchmark.v + ./$benchmark.iver > $benchmark.tmp + veriresult=$(tail -1 $benchmark.tmp | cut -d' ' -f2) + cycles=$(tail -4 $benchmark.tmp | head -1 | tr -s ' ' | cut -d' ' -f3) + echo "Veri output: "$veriresult + if [ $cresult -ne $veriresult ] + then + echo "FAIL" + exit 0 + else + echo "PASS" + fi + echo $cycles > $benchmark.cycle +done < benchmark-list-master -- cgit