Download Benchmarks

From Sniper
Jump to navigation Jump to search

A package with benchmarks is available at sniper-benchmarks.tbz (compressed archive) or (Git repository). These have been slightly adapted to:

  • Build using the compilation switches that Sniper requires (e.g. -mno-sse4), see Porting applications to Sniper.
  • Mark the start and end of the parallel section (region of interest, ROI), see Simulator hooks.
  • Runner scripts to automatically run a benchmark in Sniper with the right command-line options for a predefined collection of input sets

Options for run-sniper:

  • Make sure to define the GRAPHITE_ROOT (pointing to Sniper) and BENCHMARKS_ROOT (pointing to the location where sniper-benchmarks.tbz is installed)
  • Run run-sniper without any commandline options to see a list of supported benchmarks
  • -p suitename-benchmarkname (required): suite (splash2, parsec) and name (fft, blackscholes, ...) of the benchmark
  • -n numcores (required): number of threads to run. Note that this is the total number of threads that will run (equal to the number of available cores in the simulated machine). For Parsec, this means that the -n passed to the benchmark is usually lower since many Parsec programs start additional helper threads or use multiple threads per requested core.
  • -i inputsize (required): input set name. Usually test, small and large are available, as defined in our IISWC 2011 paper.
  • --benchmarks=suitename-benchmarkname-inputsize-numcores[,sn-bn-is-nc]+
  • -c, -g, -s: passed to sniper/run-sniper unmodified

This distribution currently contains the following benchmark suites:

Usage example:

  • cd benchmarks
  • export GRAPHITE_ROOT=/path/to/sniper
  • export BENCHMARKS_ROOT=$(pwd)
  • make
  • ./run-sniper -p splash2-fft -i test -n 4 -c gainestown
  • # or
  • ./run-sniper --benchmarks=splash2-fft-test-4 -c gainestown
  • # or
  • ./run-sniper --benchmarks=splash2-fft-test-1,splash2-fft-test-1,splash2-fft-test-1,splash2-fft-test-1 -c gainestown