forked from Meinersbur/polybench
-
Notifications
You must be signed in to change notification settings - Fork 0
Lai-YT/polybench
Folders and files
| Name | Name | Last commit message | Last commit date | |
|---|---|---|---|---|
Repository files navigation
* * * * * * * * * * * PolyBench 2.0 * * * * * * * * * * * * Available benchmarks: ::linear-algebra:: linear-algebra/kernels: linear-algebra/kernels/2mm/2mm.c linear-algebra/kernels/3mm/3mm.c linear-algebra/kernels/atax/atax.c linear-algebra/kernels/bicg/bicg.c linear-algebra/kernels/cholesky/cholesky.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/kernels/mvt/mvt.c linear-algebra/kernels/symm/symm.c linear-algebra/kernels/syr2k/syr2k.c linear-algebra/kernels/syrk/syrk.c linear-algebra/kernels/trisolv/trisolv.c linear-algebra/kernels/trmm/trmm.c linear-algebra/solvers: linear-algebra/solvers/durbin/durbin.c linear-algebra/solvers/dynprog/dynprog.c 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 ::image-processing:: image-processing/gauss-filter/gauss-filter.c image-processing/reg_detect/reg_detect.c ::stencils:: stencils/adi/adi.c stencils/fdtd-2d/fdtd-2d.c stencils/fdtd-apml/fdtd-apml.c stencils/jacobi-1d-imper/jacobi-1d-imper.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] - POLYBENCH_PAPI: use PAPI to get hardware counters as specified in utilities/papi_counters.list - Nxx: override the default dataset values * Collecting the execution time of all files $> scripts/runall.sh <benchmark-category> <machine-name> Note: the script runall must be run from the root directory of the archive. The benchmark category is one of the following: - linear-algebra/kernels - linear-algebra/solvers - datamining - image-processing - stencils Example: $> scripts/runall.sh linear-algebra/kernels nehalem-gcc ** 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>
About
No description, website, or topics provided.
Resources
Stars
Watchers
Forks
Packages 0
No packages published
Languages
- C 69.7%
- Python 13.0%
- Shell 9.5%
- Cuda 7.8%