Skip to content

Latest commit

 

History

History
62 lines (48 loc) · 1.94 KB

README.md

File metadata and controls

62 lines (48 loc) · 1.94 KB

Phantom benchmark suite

Benchmarking and performance suite for the phantom code http://github.com/danieljprice/phantom

Tests in this repo are run nightly and checked for speed and are used for performance evaluation/code scaling tests. Results are currently published to http://phantomsph.bitbucket.io/nightly/opt/

Run all benchmarks

./run-benchmarks.sh

Run selected benchmarks

./run-benchmarks.sh polar

where arguments are subdirectories of the current one

How to add benchmark problems to this suite

  1. Clone the repository to your local machine
git clone https://github.com/phantomSPH/phantom-benchmarks
  1. Make a new directory
cd phantom-benchmarks
mkdir mybench
cd mybench
  1. Add the phantom input file with ".in.s" as the file extension
cp mybench.in mybench.in.s
  1. Add the reference dump file to which results should be compared, with ".ref" as the file extension
cp mybench_00001 mybench_00001.ref
  1. Ensure your calculation is SHORT (runs in < 2 minutes) but REPRESENTATIVE, e.g. with typical particle numbers and timestep ranges

  2. Verify that the test passes by running

./run-benchmarks mybench
  1. Open an Issue to make a request for the dump files to be copied to the web server (http://data.phantom.cloud.edu.au/data/benchmarks/)

  2. Create a file named .hashlist, which points to the files that need to be automatically downloaded at run time. Generate the SHA1 checksums for your files using shasum (or sha1sum, depending on your system). For example, shasum mybench_00000. Your file should look like this:

xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx mybench_00000
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx mybench_00001.ref
  1. Commit and push the benchmark to the repository, excluding the dump files (to avoid bloating the repository)
git add mybench.in.s SETUP .hashlist
git commit -m 'added benchmark mybench'
git push