04/12/2020 08:51, Hideyuki Yamashita: > In general, DPDK application consumes CPU usage because it polls > incoming packets using rx_burst API in infinite loop. > This makes difficult to estimate how much CPU usage is really > used to send/receive packets by the DPDK application. > > For example, even if no incoming packets arriving, CPU usage > looks nearly 100% when observed by top command. > > It is beneficial if developers can observe real CPU usage of the > DPDK application. > Such information can be exported to monitoring application like > prometheus/graphana and shows CPU usage graphically. > > To achieve above, this patch set provides apistats functionality. > apistats provides the followiing two counters for each lcore. > - rx_burst_counts[RTE_MAX_LCORE] > - tx_burst_counts[RTE_MAX_LCORE] > Those accumulates rx_burst/tx_burst counts since the application starts.
Please could you compare with what rte_jobstats offers? http://code.dpdk.org/dpdk/latest/source/lib/librte_jobstats/rte_jobstats.h I feel all of this shares the same goals as librte_power work. [...] > - basic API counting functionality(apistats) into librte_ethdev Could it be it be accessible via rte_telemetry? http://code.dpdk.org/dpdk/latest/source/lib/librte_telemetry/rte_telemetry.h