This patchset extends statistics reporting to include peak and average data-rate metrics. It comes in two parts: a statistics reporting library, and a bitrate calculation library that uses it. This structure is intended to seperate statistic reporting from ethdev and allow more flexible metric registration.
-- v3 changes: * Marked rte_stats_bitrate_s as internal * Minor integer roundoff correction * Coding style corrections * Removed spurious object allocation * Changes to rte_metrics.[ch] moved from Patch 2/3 to 1/3. * Reintroduced non-port values (RTE_METRICS_NONPORT) * Added spinlocks to metric library * Removed spurious test registration/update * Added release notes entries v2 changes: * Uses a new metrics library rather than being part of ethdev Remy Horton (3): lib: add information metrics library lib: add bitrate statistics library app/test-pmd: add support for bitrate statistics app/test-pmd/testpmd.c | 28 +- config/common_base | 10 + doc/api/doxy-api-index.md | 2 + doc/api/doxy-api.conf | 2 + doc/guides/rel_notes/release_16_11.rst | 11 + lib/Makefile | 2 + lib/librte_bitratestats/Makefile | 53 ++++ lib/librte_bitratestats/rte_bitrate.c | 128 +++++++++ lib/librte_bitratestats/rte_bitrate.h | 80 ++++++ .../rte_bitratestats_version.map | 9 + lib/librte_metrics/Makefile | 51 ++++ lib/librte_metrics/rte_metrics.c | 300 +++++++++++++++++++++ lib/librte_metrics/rte_metrics.h | 204 ++++++++++++++ lib/librte_metrics/rte_metrics_version.map | 13 + mk/rte.app.mk | 3 + 15 files changed, 895 insertions(+), 1 deletion(-) create mode 100644 lib/librte_bitratestats/Makefile create mode 100644 lib/librte_bitratestats/rte_bitrate.c create mode 100644 lib/librte_bitratestats/rte_bitrate.h create mode 100644 lib/librte_bitratestats/rte_bitratestats_version.map create mode 100644 lib/librte_metrics/Makefile create mode 100644 lib/librte_metrics/rte_metrics.c create mode 100644 lib/librte_metrics/rte_metrics.h create mode 100644 lib/librte_metrics/rte_metrics_version.map -- 2.5.5