Tiny module of code to maintain and compute timed average on a given period. It comes with unit tests so we are sure the code will not bitrot while waiting for the accouting code to use it.
in v2: Make NANOSECONDS_PER_SECONDS an integer [Peter, Eric] Change module's license [Eric] Add min and max computation [Benoît] Best regards Benoît Benoît Canet (3): throttle: Make NANOSECONDS_PER_SECOND an integer timers: Move NANOSECONDS_PER_SECONDS to timer.h for future reuse util: Add an utility infrastructure used to compute an average on a time slice include/qemu/throttle.h | 2 - include/qemu/timed-average.h | 49 +++++++++++++++ include/qemu/timer.h | 2 + tests/Makefile | 2 + tests/test-timed-average.c | 62 +++++++++++++++++++ util/Makefile.objs | 1 + util/throttle.c | 4 +- util/timed-average.c | 138 +++++++++++++++++++++++++++++++++++++++++++ 8 files changed, 256 insertions(+), 4 deletions(-) create mode 100644 include/qemu/timed-average.h create mode 100644 tests/test-timed-average.c create mode 100644 util/timed-average.c -- 2.1.0