Benchpark Commands
The easiest way to get started is to run existing experiments one existing systems, or to modify one that is similar. You can search through the existing experiments and benchmarks with the below commands.
Search for available system and experiment specifications in Benchpark.
Command |
Description |
Listing in the docs |
---|---|---|
benchpark list |
Lists all benchmarks, systems, and experiments specified in Benchpark |
|
benchpark list systems |
Lists all system specified in Benchpark |
|
benchmark list benchmarks |
Lists all benchmarks specified in Benchpark |
|
benchmark list experiments |
Lists all experiments specified in Benchpark |
|
benchmark list modifiers |
Lists all modifiers specified in Benchpark |
|
benchpark tags workspace |
Lists all tags specified in Benchpark |
|
benchpark tags -a application workspace |
Lists all tags specified for a given application in Benchpark |
|
benchpark tags -t tag workspace |
Lists all experiments in Benchpark with a given tag |
|
benchpark info system <system> |
Lists all information about a given system |
|
benchpark info experiment <experiment> |
Lists all information about a given experiment |
Benchpark also has a help menu:
$ benchpark --help
usage: main.py [-h] [-V] {tags,system,experiment,setup,unit-test,audit,info,list} ...
Benchpark
options:
-h, --help show this help message and exit
-V, --version show version number and exit
Subcommands:
{tags,system,experiment,setup,unit-test,audit,info,list}
tags Tags in Benchpark experiments
system Initialize a system config
experiment Interact with experiments
setup Set up an experiment and prepare it to build/run
unit-test Run benchpark unit tests
audit Look for problems in System/Experiment repos
info Get information about Systems and Experiments
list List experiments, systems, benchmarks, and modifiers
benchpark list
usage: main.py list [-h] {benchmarks,experiments,systems,modifiers} ...
positional arguments:
{benchmarks,experiments,systems,modifiers}
List available experiments, systems, and modifiers
options:
-h, --help show this help message and exit
The benchpark list
command is used to search the available benchmarks, systems, modifiers, and experiments in Benchpark.
Benchmarks:
ad
amg2023
babelstream
genesis
gpcnet
gromacs
hpcg
hpl
ior
...
Systems:
aws-pcluster/c4.xlarge
aws-pcluster/c6g.xlarge
aws-pcluster/hpc7a.48xlarge
aws-pcluster/hpc6a.48xlarge
csc-lumi/lumi
cscs-daint/daint
cscs-eiger/eiger
generic-x86
jsc-juwels/juwels
...
Modifiers:
allocation
caliper
Experiments:
ad+single_node
amg2023+single_node
amg2023+openmp
amg2023+cuda
amg2023+rocm
amg2023+strong
amg2023+weak
amg2023+throughput
babelstream+single_node
...
Additionally, this command can be used to search for experiments with one or more programming models:
$ benchpark list experiments --experiment openmp rocm
Experiments:
amg2023+openmp
amg2023+rocm
babelstream+rocm
babelstream+openmp
genesis+openmp
gromacs+openmp
gromacs+rocm
hpcg+openmp
hpl+openmp
kripke+openmp
kripke+rocm
laghos+rocm
lammps+openmp
lammps+rocm
osu-micro-benchmarks+rocm
quicksilver+openmp
qws+openmp
raja-perf+rocm
raja-perf+openmp
remhos+rocm
salmon-tddft+openmp
saxpy+openmp
saxpy+rocm
Or search which experiments have the Caliper modifier (see Benchpark Modifiers) available:
$ benchpark list modifiers --name caliper --experiments
Modifiers:
caliper
amg2023
babelstream
hpcg
hpl
kripke
laghos
raja-perf
remhos
saxpy
stream
Now that you know the existing benchmarks and systems, you can determine your necessary workflow in Benchpark Workflow.