> From: Stephen Hemminger [mailto:step...@networkplumber.org]
> Sent: Tuesday, 3 December 2024 22.39
> 
> On Mon, 18 Nov 2024 08:37:03 +0100
> Tomasz Duszynski <tduszyn...@marvell.com> wrote:
> 
> > +Performance counter based profiling
> > +-----------------------------------
> > +
> > +Majority of architectures support some performance monitoring unit
> (PMU).
> > +Such unit provides programmable counters that monitor specific
> events.
> > +
> > +Different tools gather that information, like for example perf.
> > +However, in some scenarios when CPU cores are isolated and run
> > +dedicated tasks interrupting those tasks with perf may be
> undesirable.
> 
> The data should be folded into telemetry rather than introducing yet
> another
> DPDK API for applications to deal with.

I strongly prefer the dedicated high-performance PMU API rather than using 
telemetry for this.
Please keep the PMU API.

I expect to call the PMU API in our (proprietary) run-time profiling library, 
where reading PMU counters should be as lean as calling rte_rdtsc(). I sure 
don't want any superfluous overhead when profiling with a very high sampling 
rate.

For reference, many other libraries have dedicated APIs for reading the 
statistics structures of those libraries.

A wrapper around the PMU API can be added for Telemetry.

IMO, the Telemetry library should be made optional, like the Trace library 
recently was. For embedded systems, they are not only bloat, but potentially 
helpful for hackers trying to break in. And Security is one of the DPDK 
Governing Board's focus areas.

Reply via email to