Skip to content

Latest commit

 

History

History

plot_utils

Plotting scripts for the SPP paper

Functionality

pmembench plots

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

pmemkv plots

To produce the pmemkv plots:

$ ./import_pmemkv.sh <path-to-pmemkv-results>
$ python3 generate_plots.py plot_config_pmemkv.yml

Files description

Importing the results in the correct format

  • 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.

Generating the plots

  • 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.