On Fri, Dec 12, 2025 at 02:32:49PM +0900, Stephen Hemminger wrote:
> On Wed, 10 Dec 2025 16:55:25 +0000
> Bruce Richardson <[email protected]> wrote:
>
> > TL;DR
> > ------
> >
> > For a quick demo, apply patces, run e.g. testpmd and then in a separate
> > terminal run:
> >
> > ./usertools/dpdk-telemetry-watcher.py -d1T eth.tx
> >
> > Output, updated once per second, will be traffic rate per port e.g.:
> >
> > Connected to application: "dpdk-testpmd"
> > Time /ethdev/stats,0.opackets /ethdev/stats,1.opackets Total
> > 16:29:12 5,213,119 5,214,304 10,427,423
> >
> >
<snip>
> >
> > usertools/dpdk-telemetry-watcher.py | 429 ++++++++++++++++++++++++++++
> > usertools/meson.build | 1 +
> > 2 files changed, 430 insertions(+)
> > create mode 100755 usertools/dpdk-telemetry-watcher.py
> >
> > --
> > 2.51.0
>
>
> The TUI patch was
> https://patchwork.dpdk.org/project/dpdk/patch/[email protected]/
>
Took a look at that patch proposal, and here are some of the main
differences between the two scripts:
* the telemetry-tui is a full-screen app which is a lot prettier and
probably much more suitable for non-experts.
* the script I provided is FAR less user friendly and operates at a much
more "techie" level
* on the other hand, it's more flexible because of that:
- can be used to display any numeric stats - the tui is hard-coded to show
particular NIC stats - including e.g. cryptodev, or dmadev ones
- can show deltas and totals as desired
- can quit after a certain fixed amount of time
* my script is probably more limited in terms of what can be displayed,
since it assumes that you want one-line of output per update. TUI
displays lots of (fixed)stats simultaneously
* TUI as proposed has a few glitches - got a divide by zero error when run
against a testpmd instance that didn't have traffic running, so all stats
were zero. (That's an easy fix though)
* The new script I propose has one major feature that I would look to add
to the TUI if we merged that - the reconnection support. I find it very
handy to run the watcher script and leave it running while I start and
stop whatever app(s) I'm using.
* My script has no additional dependencies beyond stock python, while the
TUI requires one additional dependency "rich" to manage the TUI. It also
can use a second dependency "plotext" (not Ubuntu packaged) to display
charts if so desired.
Just my quick assessment of the two from a quick try of the TUI one.
/Bruce