79c913a42f
Extended xstats API in ethdev library to allow grouping of stats logically so they can be retrieved per logical grouping managed by the application. Added new functions rte_eth_xstats_get_names_by_id and rte_eth_xstats_get_by_id using additional arguments (in compare to rte_eth_xstats_get_names and rte_eth_xstats_get) - array of ids and array of values. doc: add description for modified xstats API Documentation change for new extended statistics API functions. The old API only allows retrieval of *all* of the NIC statistics at once. Given this requires a MMIO read PCI transaction per statistic it is an inefficient way of retrieving just a few key statistics. Often a monitoring agent only has an interest in a few key statistics, and the old API forces wasting CPU time and PCIe bandwidth in retrieving *all* statistics; even those that the application didn't explicitly show an interest in. The new, more flexible API allow retrieval of statistics per ID. If a PMD wishes, it can be implemented to read just the required NIC registers. As a result, the monitoring application no longer wastes PCIe bandwidth and CPU time. Signed-off-by: Kuba Kozak <kubax.kozak@intel.com>