|
|
When developing Parabix applications, it is often useful
|
|
|
to compare the performance of different algorithm choices.
|
|
|
A useful and flexible script for this can be built using the
|
|
|
```QA/perf_stat_runner.py``` tool.
|
|
|
|
|
|
The idea of this tool is to run a particular program with its
|
|
|
inputs together with combinations of different algorithmic choices specified
|
|
|
on the command line. The linux ```perf``` program is used to execute
|
|
|
the program and collect performance measures including instruction counts, cycle counts and branch misses. Each combination of performance parameter is run once in order to populate the object cache (and so eliminate the JIT compile time from further runs) as well as to check that each variation produces the same result. Then the program is run several times to obtain averaged measurements of the counters.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|