Difference between revisions of "Download Benchmarks"

From Sniper
Jump to navigation Jump to search
 
(8 intermediate revisions by 2 users not shown)
Line 1: Line 1:
A package with benchmarks is available at [http://snipersim.org/packages/sniper-benchmarks.tbz sniper-benchmarks.tbz]. These have been slightly adapted to:
+
A package with benchmarks is available at [http://snipersim.org/packages/sniper-benchmarks.tbz sniper-benchmarks.tbz] (compressed archive) or http://snipersim.com/git/benchmarks.git (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]].
 
* 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]].
 
* Mark the start and end of the parallel section (region of interest, ROI), see [[Simulator hooks]].
Line 7: Line 7:
 
* Make sure to define the GRAPHITE_ROOT (pointing to Sniper) and BENCHMARKS_ROOT (pointing to the location where sniper-benchmarks.tbz is installed)
 
* Make sure to define the GRAPHITE_ROOT (pointing to Sniper) and BENCHMARKS_ROOT (pointing to the location where sniper-benchmarks.tbz is installed)
 
* Run <code>run-sniper</code> without any commandline options to see a list of supported benchmarks
 
* Run <code>run-sniper</code> without any commandline options to see a list of supported benchmarks
* <code>-p suitename-benchmarkname</code> (required): suite (splash2) and name (fft, barnes, ...) of the benchmark
+
* <code>-p suitename-benchmarkname</code> (required): suite (splash2, parsec) and name (fft, blackscholes, ...) of the benchmark
* <code>-n numcores</code> (required): number of threads to run
+
* <code>-n numcores</code> (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 <code>-n</code> passed to the benchmark is usually lower since many Parsec programs start additional helper threads or use multiple threads per requested core.
* <code>-i inputsize</code> (required): input set name. Usually <code>test</code>, <code>small</code> and <code>large</code> are available, as defined in our [[IISWC 2011|Iiswc2011Heirman]] paper.
+
* <code>-i inputsize</code> (required): input set name. Usually <code>test</code>, <code>small</code> and <code>large</code> are available, as defined in our [[Paper:Iiswc2011Heirman|IISWC 2011]] paper.
 +
* <code>--benchmarks=suitename-benchmarkname-inputsize-numcores[,sn-bn-is-nc]+</code>
 
* <code>-c</code>, <code>-g</code>, <code>-s</code>: passed to <code>sniper/run-sniper</code> unmodified
 
* <code>-c</code>, <code>-g</code>, <code>-s</code>: passed to <code>sniper/run-sniper</code> unmodified
  
 
This distribution currently contains the following benchmark suites:
 
This distribution currently contains the following benchmark suites:
 
* SPLASH-2
 
* SPLASH-2
 +
* [http://parsec.cs.princeton.edu/ PARSEC 2.1]
  
 
Usage example:
 
Usage example:
Line 19: Line 21:
 
* wget http://snipersim.org/packages/sniper-benchmarks.tbz
 
* wget http://snipersim.org/packages/sniper-benchmarks.tbz
 
* tar xjf sniper-benchmarks.tbz
 
* tar xjf sniper-benchmarks.tbz
 +
* # or
 +
* git clone http://snipersim.org/git/benchmarks.git
 +
<br>
 
* cd benchmarks
 
* cd benchmarks
 
* export GRAPHITE_ROOT=/path/to/sniper
 
* export GRAPHITE_ROOT=/path/to/sniper
Line 24: Line 29:
 
* make
 
* make
 
* ./run-sniper -p splash2-fft -i test -n 4 -c gainestown
 
* ./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
 
</code>
 
</code>

Latest revision as of 05:22, 12 October 2012

A package with benchmarks is available at sniper-benchmarks.tbz (compressed archive) or http://snipersim.com/git/benchmarks.git (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