Adding a Benchmark
This guide is intended for application developers who want to add a benchmark so that it can be run with Benchpark.
Create a New Benchmark
The following system-independent specification is required for each ${Benchmark1}:
package.py
is a Spack specification that defines how to build and install ${Benchmark1}. See the Spack Package Creation Tutorial to learn how to create and test a Spackpackage.py
. If your benchmark already exists in Spack, benchpark will use that version of thepackage.py
, unless you define a version inbenchpark/repo/
.application.py
is a Ramble specification that defines the ${Benchmark1} input and parameters. See the Ramble Application Definition Developers Guide to learn how to create a Rambleapplication.py
. We recommend testing yourapplication.py
using the Ramble Usage While Developing instructions. If your benchmark already exists in Ramble, benchpark will use that version of theapplication.py
, unless you define a version inbenchpark/repo/
.
Again, by default Benchpark will use ${Benchmark1} specifications (application.py
and package.py
) provided in the Spack and Ramble upstream repositories. Overwrite
the upstream definitions by adding the application.py
and/or package.py
to
benchpark/repo/${Benchmark1}
, see Frequently Asked Questions for details.
After satisfying the above prerequisites, in order to use your benchmark in Benchpark, you will need to create an experiment as described in Adding an Experiment.