Next: , Previous: Profiling, Up: Profiling


5.1 Profiling Background

The Profile class can be used by extenders to implement true profiling techniques or for run-to-run comparisons.

In true profiling data is collected from a training run and used to initialize or otherwise guide the behavior of the target in a reference run. (Reference indicates that the performance of whatever is being developed is being measured.) True profiling might be used to select the best branch predictor for each branch. To be fair benchmark input data used in training runs should differ from the input data used in reference runs. See the ez_profile_branch_pred.cc for an example of using the profile class for true profiling.

In run-to-run comparison one is interested in finding differences in two similar simulation runs. For example, one might want to find which branches whos prediction accuracy changed in runs with different cache sizes.