| * * * * * * * * * * |
| * PolyBenchs 1.0 * |
| * * * * * * * * * * |
| |
| |
| * Available benchmarks: |
| |
| ::linear-algebra:: |
| linear-algebra/kernels: |
| linear-algebra/kernels/atax/2mm.c |
| linear-algebra/kernels/atax/3mm.c |
| linear-algebra/kernels/atax/atax.c |
| linear-algebra/kernels/bicg/bicg.c |
| linear-algebra/kernels/doitgen/doitgen.c |
| linear-algebra/kernels/gemm/gemm.c |
| linear-algebra/kernels/gemver/gemver.c |
| linear-algebra/kernels/gesummv/gesummv.c |
| |
| linear-algebra/solvers: |
| linear-algebra/solvers/gramschmidt/gramschmidt.c |
| linear-algebra/solvers/lu/lu.c |
| linear-algebra/solvers/ludcmp/ludcmp.c |
| |
| ::datamining:: |
| datamining/correlation/correlation.c |
| datamining/covariance/covariance.c |
| |
| ::stencils:: |
| stencils/adi/adi.c |
| stencils/jacobi-2d-imper/jacobi-2d-imper.c |
| stencils/seidel/seidel.c |
| |
| |
| * To compile a benchmark without any monitoring: |
| |
| $> gcc -I utilities utilities/instrument.c linear-algebra/kernels/atax/atax.c |
| |
| |
| |
| * To compile a benchmark with execution time reporting: |
| |
| $> gcc -I utilities utilities/instrument.c linear-algebra/kernels/atax/atax.c -DPOLYBENCH_TIME |
| |
| |
| * Available options |
| |
| They are all passed as macro definitions during compilation time. The |
| current list is: |
| - POLYBENCH_TIME: output execution time (gettimeofday) [default: off] |
| - POLYBENCH_NO_FLUSH_CACHE: don't flush the cache before calling the |
| timer [default: flush the cache] |
| - POLYBENCH_LINUX_FIFO_SCHEDULER: use FIFO real-time scheduler for the |
| kernel execution, the program must be run as root, under linux only, |
| and compiled with -lc [default: off] |
| - POLYBENCH_CACHE_SIZE_KB: cache size to flush, in kB [default: 8192] |
| - POLYBENCH_TEST_MALLOC: use malloc instead of stack allocation [default: off] |
| - POLYBENCH_DUMP_ARRAYS: dump all live-out arrays on stderr [default: off] |
| |
| - Nxx: override the default dataset values |
| |
| |
| * Collecting the execution time of all files |
| |
| $> scripts/runall.sh <machine-name> |
| |
| Note: the script runall must be run from the root directory of the archive. |
| |
| |
| ** Specifying different dataset size for one file in particular |
| |
| - Create a compiler.opts file under the directory of the benchmark |
| - Specify a set of options, e.g. -DX=1024 -DY=1024 (see gemm for an example) |
| |
| |
| ** To specify another compiler |
| |
| - Simplest is to edit scripts/runall.sh, and change the |
| COMPILER_COMMAND variable. One can also export the adequate |
| COMPILER_COMMAND variable in the shell environment. |
| |
| |
| |
| * Author |
| Louis-Noel Pouchet <pouchet@cse.ohio-state.edu> |
| |
| * Contributors |
| Uday Bondhugula <ubondhug@us.ibm.com> |