From: Stanislav Fomichev <sdf.kernel@gmail.com>
To: netdev@vger.kernel.org
Cc: davem@davemloft.net, edumazet@google.com, kuba@kernel.org,
pabeni@redhat.com
Subject: [RFC net-next 0/6] selftests: net: add performance metric reporting
Date: Wed, 16 Sep 2026 12:04:03 -0700 [thread overview]
Message-ID: <20260916190409.1222272-1-sdf@fomichev.me> (raw)
Sharing as an RFC to get the feedback on the overall approach. Current
model is where the ktap side drives system monitoring and nipa only
collects/interprets/draws. Another way we can do it is to move system
monitoring stuff to nipa.
ktap-side monitoring pros/cons:
- pro: same format for system vs test metrics (same parser, same
aggregator, etc)
- pro: test controls when the system collection starts
- pro: test controls what the system collects (say, on multi-nic
machines, we collect only the things that matter)
- pro: local runs produce the same output (and we can add some tools to
produce the aggregates for local analysis)
- con: bespoke metrics aggregation format defined/exported by the test (but
I think we still need it for non-system metrics regardless?)
- con: extra code/complexity on ksft side (although it's only SystemMonitor,
the rest of this patch series still relevant)
nipa-side monitoring pros/cons:
- pro: more code stays on nipa side
- pro: tests don't care about system side of things, it's always
collected on nipa side
- pro: each nipa runner can define its own policy/thresholds (although,
why would we want it only for the system side and not the test side?)
- con: separate collection & parsing (system vs test)
- con: local runs need nipa if we want to observe the metrics
Stanislav Fomichev (6):
selftests: net: py: add timestamped metric output
selftests: net: py: add metric policy output
selftests: drv-net: add a system performance monitor
selftests: drv-net: add an iperf performance test
selftests: drv-net: add a kperf runner
selftests: drv-net: measure devmem performance with kperf
.../testing/selftests/drivers/net/README.rst | 56 ++++
.../testing/selftests/drivers/net/hw/Makefile | 1 +
.../selftests/drivers/net/hw/devmem.py | 70 ++++-
.../testing/selftests/drivers/net/hw/iperf.py | 21 ++
.../drivers/net/hw/lib/py/__init__.py | 19 +-
.../selftests/drivers/net/lib/py/__init__.py | 18 +-
.../selftests/drivers/net/lib/py/kperf.py | 148 +++++++++++
.../selftests/drivers/net/lib/py/load.py | 25 +-
.../drivers/net/lib/py/system_monitor.py | 240 ++++++++++++++++++
.../testing/selftests/net/lib/py/__init__.py | 12 +-
tools/testing/selftests/net/lib/py/ksft.py | 174 ++++++++++++-
11 files changed, 763 insertions(+), 21 deletions(-)
create mode 100755 tools/testing/selftests/drivers/net/hw/iperf.py
create mode 100644 tools/testing/selftests/drivers/net/lib/py/kperf.py
create mode 100644 tools/testing/selftests/drivers/net/lib/py/system_monitor.py
--
2.53.0-Meta
next reply other threads:[~2026-09-16 19:04 UTC|newest]
Thread overview: 10+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-09-16 19:04 Stanislav Fomichev [this message]
2026-09-16 19:04 ` [RFC net-next 1/6] selftests: net: py: add timestamped metric output Stanislav Fomichev
2026-09-22 16:10 ` Paolo Abeni
2026-09-16 19:04 ` [RFC net-next 2/6] selftests: net: py: add metric policy output Stanislav Fomichev
2026-09-22 16:16 ` Paolo Abeni
2026-09-16 19:04 ` [RFC net-next 3/6] selftests: drv-net: add a system performance monitor Stanislav Fomichev
2026-09-16 19:04 ` [RFC net-next 4/6] selftests: drv-net: add an iperf performance test Stanislav Fomichev
2026-09-16 19:04 ` [RFC net-next 5/6] selftests: drv-net: add a kperf runner Stanislav Fomichev
2026-09-16 19:04 ` [RFC net-next 6/6] selftests: drv-net: measure devmem performance with kperf Stanislav Fomichev
2026-09-17 20:01 ` [RFC net-next 0/6] selftests: net: add performance metric reporting Jakub Kicinski
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20260916190409.1222272-1-sdf@fomichev.me \
--to=sdf.kernel@gmail.com \
--cc=davem@davemloft.net \
--cc=edumazet@google.com \
--cc=kuba@kernel.org \
--cc=netdev@vger.kernel.org \
--cc=pabeni@redhat.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox