On 16/09/2022 13:35, Kevin Laatz wrote:
On
14/09/2022 15:33, Stephen Hemminger wrote:
On Wed, 14 Sep 2022 10:29:25 +0100
Kevin Laatz <kevin.laatz@intel.com> wrote:
Currently, there is no way to measure
lcore polling busyness in a passive
way, without any modifications to the application. This
patchset adds a new
EAL API that will be able to passively track core polling
busyness. As part
of the set, new telemetry endpoints are added to read the
generate metrics.
How much does measuring busyness impact performance??
In the past, calling rte_rdsc() would slow down packet rate
because it is stops CPU pipeline. Maybe better on more modern
processors, haven't measured it lately.
Hi Stephen,
I've run some 0.001% loss tests using 2x 100G ports, with 64B
packets using testpmd for forwarding. Those tests show a ~2.7%
performance impact when the lcore poll busyness feature is enabled
vs compile-time disabled.
Applications with more compute intensive workloads should see less
performance impact since the proportion of time spent
time-stamping will be smaller.
In addition, a performance autotest has been added in this
patchset which measures the cycles cost of calling the timestamp
macro. Please feel free to test it on your system
(lcore_poll_busyness_perf_autotest).
Worth mentioning as well, is that when lcore poll busyness is
enabled at compile-time and disabled at run-time, we see zero performance
impact.