fupermod: Functional Performance Models of heterogeneous processors
fupermod_precision Struct Reference
[Benchmarking]
Public Attributes | |
int | reps_min |
int | reps_max |
double | cl |
double | eps |
double | time_max_rep |
double | zero_speed |
double | time_max_kill |
Detailed Description
Precision of measurement. Used as an input argument of benchmark functions. To provide reliable results, the computation experiments in each benchmark are repeated either fixed or variable number of times. This data structure allows the user to control the accuracy and efficiency of benchmarking.
- Assigning to reps_min and reps_max the same values results in the fixed number of repetitions of the computation operation, with the cl and eps arguments being ignored (this allows the user to control the efficiency of benchmarking).
- If reps_min < reps_max, the experiments are repeated until a confidence interval, fupermod_point::ci, found with the confidence level, cl = , satisfies eps, or the number of repetitions reaches its maximum, reps_max (this allows the user to control the accuracy of benchmarking).
- If total benchmarking time exceeds time_max_rep then no more repetitions are attempted.
- If zero_speed > 0, pthreads are used which allows the benchmark to be killed after a time interval x, where x = min(complexity(d)/zero_speed, time_max_kill).
Member Data Documentation
Minimum number of repetitions
Maximum number of repetitions
double fupermod_precision::cl |
Confidence level
double fupermod_precision::eps |
Relative error
If benchmark has exceeded this time do not do another repetition
If benchmark slower then this speed, kill it with pthreads, if zero_speed <= 0, do not use pthreads
If zero_speed > 0, and benchmark has exceeded this time kill it with pthreads
The documentation for this struct was generated from the following file:
- fupermod/fupermod_benchmark.h