DPDK patches and discussions
 help / color / mirror / Atom feed
From: Shani Peretz <shperetz@nvidia.com>
To: Stephen Hemminger <stephen@networkplumber.org>
Cc: "dev@dpdk.org" <dev@dpdk.org>,
	Aman Singh <aman.deep.singh@intel.com>,
	Dariusz Sosnowski <dsosnowski@nvidia.com>,
	Slava Ovsiienko <viacheslavo@nvidia.com>,
	Bing Zhao <bingz@nvidia.com>, Ori Kam <orika@nvidia.com>,
	Suanming Mou <suanmingm@nvidia.com>,
	Matan Azrad <matan@nvidia.com>,
	"NBU-Contact-Thomas Monjalon (EXTERNAL)" <thomas@monjalon.net>,
	Ferruh Yigit <ferruh.yigit@amd.com>,
	Andrew Rybchenko <andrew.rybchenko@oktetlabs.ru>,
	Anatoly Burakov <anatoly.burakov@intel.com>
Subject: RE: [RFC PATCH] ethdev: add new API for enable/disable xstat counters by ID
Date: Mon, 23 Dec 2024 10:46:59 +0000	[thread overview]
Message-ID: <SA1PR12MB94917E63FE910BB6F5DC4F37BF022@SA1PR12MB9491.namprd12.prod.outlook.com> (raw)
In-Reply-To: <20241222084600.7d020991@hermes.local>

Sorry if it wasn't clear, in mlx5 there is limited number of counters, so if there are X counters and 2X queues, there won't be enough counters to get statistics for all queues at the same time.
In this case we thought the best approach would be to allow the user to choose which queues they want statistics from.
If the counters are exceeded, the user would have the option to disable the counter, thereby freeing up the resource for reuse elsewhere.

> -----Original Message-----
> From: Stephen Hemminger <stephen@networkplumber.org>
> Sent: Sunday, 22 December 2024 18:46
> To: Shani Peretz <shperetz@nvidia.com>
> Cc: dev@dpdk.org; Aman Singh <aman.deep.singh@intel.com>; Dariusz
> Sosnowski <dsosnowski@nvidia.com>; Slava Ovsiienko
> <viacheslavo@nvidia.com>; Bing Zhao <bingz@nvidia.com>; Ori Kam
> <orika@nvidia.com>; Suanming Mou <suanmingm@nvidia.com>; Matan
> Azrad <matan@nvidia.com>; NBU-Contact-Thomas Monjalon (EXTERNAL)
> <thomas@monjalon.net>; Ferruh Yigit <ferruh.yigit@amd.com>; Andrew
> Rybchenko <andrew.rybchenko@oktetlabs.ru>; Anatoly Burakov
> <anatoly.burakov@intel.com>
> Subject: Re: [RFC PATCH] ethdev: add new API for enable/disable xstat
> counters by ID
> 
> External email: Use caution opening links or attachments
> 
> 
> On Sun, 22 Dec 2024 17:38:19 +0200
> Shani Peretz <shperetz@nvidia.com> wrote:
> 
> > This change introduces a new API to dynamically enable or disable
> > xstat counters by their IDs. Some counters may require hardware
> > resources that are potentially limited, so providing the ability to
> > toggle them on or off makes sense.
> > In addition, adding an API to query the current state (enabled,
> > disabled, or not supported) of an xstat counter is added.
> > New APIs:
> >       - rte_eth_xstats_enable_counter(struct rte_eth_dev *dev, uint64_t id);
> >       - rte_eth_xstats_disable_counter(struct rte_eth_dev *dev, uint64_t id);
> >       - rte_eth_xstats_query_state(struct rte_eth_dev *dev, uint64_t
> > id);
> >
> > Added the following testpmd subcommands:
> >  toggle the counter on and off
> >      > port (port_id) enable|disable <counter_name> query the state of
> > counters:
> >      > set xstats-show-state on|off
> >
> > Note that by default, generic stats (like those provided by
> > eth_basic_stats_get()) will be considered unsupported and will not be
> > toggleable.
> > Also all xstats will be considered unsupported for dynamic
> > enable/disable, and each PMD will be able to override this in its
> implementation.
> >
> > Specifically in mlx5 PMD, expose a new xstat to track packet drops of
> > hairpin Rx queue:
> >    - Hairpin_out_of_buffer - Port-level counter -
> >               counts drops from all the hairpin queues
> >    - Hairpin_out_of_buffer_rxq* - Queue-level counter -
> >               counts drops of a specific queue Both the port-level and
> > per-queue counters can be enabled, disabled, and queried.
> >
> > Signed-off-by: Shani Peretz <shperetz@nvidia.com>
> 
> Why what is the value of having a counter disabled?
> Is this something that speeds up the PMD?
> 
> IMHO DPDK changes should be driven off user need, not the HW capabilities.

      reply	other threads:[~2024-12-23 10:47 UTC|newest]

Thread overview: 3+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-12-22 15:38 Shani Peretz
2024-12-22 16:46 ` Stephen Hemminger
2024-12-23 10:46   ` Shani Peretz [this message]

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=SA1PR12MB94917E63FE910BB6F5DC4F37BF022@SA1PR12MB9491.namprd12.prod.outlook.com \
    --to=shperetz@nvidia.com \
    --cc=aman.deep.singh@intel.com \
    --cc=anatoly.burakov@intel.com \
    --cc=andrew.rybchenko@oktetlabs.ru \
    --cc=bingz@nvidia.com \
    --cc=dev@dpdk.org \
    --cc=dsosnowski@nvidia.com \
    --cc=ferruh.yigit@amd.com \
    --cc=matan@nvidia.com \
    --cc=orika@nvidia.com \
    --cc=stephen@networkplumber.org \
    --cc=suanmingm@nvidia.com \
    --cc=thomas@monjalon.net \
    --cc=viacheslavo@nvidia.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;
as well as URLs for NNTP newsgroup(s).