On Tue, 20 Feb 2018 16:13:30 -0600 Mark Michelson <mmich...@redhat.com> wrote:
> This set of commits adds a new library for OVS that allows for measuring > the performance of operations in OVS and compiling statistics from these > measurements. > > For developers, this can provide a measurement of something that is > either finer or coarser-grained than what is easily measured with a > profiler. At the risk of sounding like a broken record - I think we do need tests for this new module. Otherwise verifying the calculations is difficult. So here are patches that add tests. Feel free to incorporate them into the series, reuse the code, or use it just for development. Some problems that I've noticed while reviewing/testing it: 1. Return status from start_sample/end_sample is always true, so it's not very useful. It has also led me to thinking that the sample has been processed correctly, so you might even say that it is confusing. 2. Minimum value is not getting initialized, so it is always 0. See FIXME's in the tests. 3. The calculation of 95th percentile seems to be quite off for a simple population of 10 samples ({ 1, 2, ..., 10 }). I'm not familiar with the P^2 method that was used so maybe it's expected. Worth checking. There is a FIXME in the tests. 4. It is not possible to use 0 as an initial timestamp. Seems like a weird limitation. 5. The module calculates statistics over durations of time intervals. Is the name 'performance' adequate for something as specific? Thanks, Jakub --- Jakub Sitnicki (3): performance: Add API for retrieving calculated statistics performance: Add API for waiting until samples have been processed tests: Add tests for performance library module lib/performance.c | 52 ++++++++++++++++ lib/performance.h | 16 +++++ tests/automake.mk | 3 +- tests/library.at | 5 ++ tests/test-performance.c | 150 +++++++++++++++++++++++++++++++++++++++++++++++ 5 files changed, 225 insertions(+), 1 deletion(-) create mode 100644 tests/test-performance.c -- 2.14.3 _______________________________________________ dev mailing list d...@openvswitch.org https://mail.openvswitch.org/mailman/listinfo/ovs-dev