To produce the pmembench plots:
$ ./import_pmembench.sh <path-to-pmembench-results>
$ python3 generate_plots.py plot_config_pmembench_tx.yml
$ python3 generate_plots.py plot_config_maps.yml
To produce the pmemkv plots:
$ ./import_pmemkv.sh <path-to-pmemkv-results>
$ python3 generate_plots.py plot_config_pmemkv.yml
import_pmembench.sh
: Imports the results of the pmembench benchmarks. Supply as the only command line argument the path to the results folder as generated by the benchmark script.import_pmemkv.sh
: Imports the results of the pmemkv benchmarks. Supply as the only command line argument the path to the results folder as generated by the benchmark script.
generate_plots.py
: Parses, analyses the results and creates the plots for the respective benchmark by providing as command line argument its .yml file in this directory after the import scripts calls.plot_all.sh
: Imports, parses, analyses the results and creates the plots for all the benchmarks under the (created) plots directory. It takes as command line arguments the results folder of the pmembench and pmemkv benchmarks.analyse.py
: Helper script with complicated logic that analyzes the results and places them in dictionaries.parser.py
: Helper script that is used for parsing the results.plot.py
: Helper script that acts as a multiplexer to choose the appropriate plot function based on its input.plotters.py
: Helper script with a custom set of plotting functions tailored for the paper needs.*.yml
files: Configuration files that hint the plotting scripts about the results folders, benchmark name, x and y axis names, metrics and resulting plots folder.