This module analyzes a workload after it is run.
(For now, it only supports OpenWhisk activations.)
- The Synthetic Workload Invoker should be run first.
- Then run the Workload Analyzer:
python WorkloadAnalyzer.py -r -p
- Certain features can be controlled by input arguments:
-v
or--verbose
: prints the detailed test data-p
or--plot
: plots the test results-s
or--save_plot
: save test result plots (this option should be used with-p
)-a
or--archive
: archive the test results in an pickle file (in thedata_archive
directory)-c
or--capacity_factor
: returns the capacity factor for functions in the workload (stored as JSON inworkload_analyzer/capacity_factors.json
)-o
or--override_testname
: this option is followed by the new test name. Allows assigning new names to tests, which is specifically useful for archiving with desired names.-r
or--read_results
: also gather the results of function invocations
- Analysis logs can be found in
../logs/WA.log
.
- matplotlib
- pandas
- seaborn
The wskutil.py
script has been taken from the OpenWhisk project (https://github.com/apache/openwhisk/blob/master/tools/admin/wskutil.py) with no modifications. It holds the original Apache 2.0 license.