The executor will run programs, piping stdout and stderr to local
variables and allow parser plugins to be attached to it. If an output
pipe (out/err) has a plugin, the plugin will return a dict(), if not,
the executor will return the original string.
The LinuxPerf plugin uses the executor and introduces its own plugin to
parse the stderr (where the perf results are printed to). It also
accepts output plugins from the benchmarks/programs that will call perf,
so that both err and out can be parsed and dictionaries can be returned.
Users of both execute and perf should use the dict to print out yaml
files, so that they can be compared, analysed, stored and queried
offline.
The executor will run programs, piping stdout and stderr to local variables and allow parser plugins to be attached to it. If an output pipe (out/err) has a plugin, the plugin will return a dict(), if not, the executor will return the original string.
The LinuxPerf plugin uses the executor and introduces its own plugin to parse the stderr (where the perf results are printed to). It also accepts output plugins from the benchmarks/programs that will call perf, so that both err and out can be parsed and dictionaries can be returned.
Users of both execute and perf should use the dict to print out yaml files, so that they can be compared, analysed, stored and queried offline.
Partially fixes bug #1