Analysis of benchmarks

As soon as the benchmarks have been submitted you can request a summary of the current performance. If a job has not yet finished, not yet started or crashed, MDBenchmark notifies you and marks the affected benchmarks accordingly.

Retrieving the results

The benchmark results can be retrieved immediately after they have been submitted, even if the jobs have not yet started. To do this, simply run:

mdbenchmark analyze

This will print a summary of your benchmarks. You can do this any time and check the status of your simulations even if they haven’t completed yet. The printed results look like this:

| module                   |   nodes |   ns/day |   run time [min] | gpu   | host   |   ncores |
| gromacs/2018.3           |       1 |   99.102 |               15 | True  | draco  |       24 |
| gromacs/2018.3           |       2 |  161.454 |               15 | True  | draco  |       48 |
| gromacs/2018.3           |       3 |        ? |               15 | True  | draco  |       72 |
| gromacs/2018.3           |       4 |  181.614 |               15 | True  | draco  |       96 |

The results above showcases that MDBenchmark displays jobs that have not finished, started or crashed with a question mark (?).

Saving a CSV file

Once your runs have completed you can write an output CSV file for further processing and plotting. You can define the name of the output CSV file with the -s or --save-csv option:

mdbenchmark analyze --save-csv my_benchmark_results.csv

Narrow down results to a specific benchmark

Similar to the submission of benchmarks, you can use the --directory option to narrow down the performance analysis to a specific path of benchmarks or a single benchmark:

mdbenchmark analyze --directory draco_gromacs/2018.3

Plot the number of cores

You can customize the top of your plot with the --ncores option. It accepts an integer value, referring to the number of cores per node. If the option is not given, MDBenchmark will try to read this information from the log file.