DPDK-dev Archive on lore.kernel.org
 help / color / Atom feed
From: "Wang, Haiyue" <haiyue.wang@intel.com>
To: Thomas Monjalon <thomas@monjalon.net>,
	Ray Kinsella <mdr@ashroe.eu>,
	"stephen@networkplumber.org" <stephen@networkplumber.org>
Cc: "dev@dpdk.org" <dev@dpdk.org>,
	"Yigit, Ferruh" <ferruh.yigit@intel.com>,
	"viacheslavo@mellanox.com" <viacheslavo@mellanox.com>,
	"Verplanke, Edwin" <edwin.verplanke@intel.com>
Subject: Re: [dpdk-dev] [RFC v2 1/3] ethdev: add the API for getting trace information
Date: Sun, 27 Oct 2019 04:10:39 +0000
Message-ID: <E3B9F2FDCB65864C82CD632F23D8AB8773D80F70@shsmsx102.ccr.corp.intel.com> (raw)
In-Reply-To: <8407813.BflZntU1Eb@xps>

> -----Original Message-----
> From: Thomas Monjalon [mailto:thomas@monjalon.net]
> Sent: Sunday, October 27, 2019 00:46
> To: Ray Kinsella <mdr@ashroe.eu>; stephen@networkplumber.org; Wang, Haiyue <haiyue.wang@intel.com>
> Cc: dev@dpdk.org; Yigit, Ferruh <ferruh.yigit@intel.com>; viacheslavo@mellanox.com; Verplanke, Edwin
> <edwin.verplanke@intel.com>
> Subject: Re: [dpdk-dev] [RFC v2 1/3] ethdev: add the API for getting trace information
> 
> 13/08/2019 14:51, Ray Kinsella:
> > On 13/08/2019 04:24, Stephen Hemminger wrote:
> > > On Tue, 13 Aug 2019 11:06:10 +0800
> > > Haiyue Wang <haiyue.wang@intel.com> wrote:
> > >
> > >> Enhance the PMD to support retrieving trace information like
> > >> Rx/Tx burst selection etc.
> > >>
> > >> Signed-off-by: Haiyue Wang <haiyue.wang@intel.com>
> [...]
> > >>  int
> > >> +rte_eth_trace_info_get(uint16_t port_id, uint16_t queue_id,
> > >> +		       enum rte_eth_trace type, char *buf, int sz)
> [...]
> > > The bigger problem is that this information is like a log message
> > > and unstructured, which makes it device specific and useless for automation.
> >
> > IMHO - this is much better implemented as a capability bitfield, that
> > can be queried.
> 
> Now I see where this idea comes from.
> Ray, Stephen, structuring shuch information is really a bad idea.
> The Rx/Tx functions are not like capabilities, they are full of smart
> tricks written by brillant engineers. Please do not try to put ideas
> in some categories. We will have more and more new types of optimization
> and ideas when the hardware will evolve.
> 
> And, more importantly, there is no need of automation or processing
> with this information.
> 

The real requirement is from VPP CLI practice in production:

http://www.jimmdenton.com/vpp-1810-mellanox/

    tx burst function: xxx
    rx burst function: xxx

Their implementation requires *non static* rx/tx burst.

Yes, MLX uses an template compile for extreme performance.

----
* @param olx
 *   Configured offloads mask, presents the bits of MLX5_TXOFF_CONFIG_xxx
 *   values. Should be static to take compile time static configuration
 *   advantages.
 *
 * @return
 *   Number of packets successfully transmitted (<= pkts_n).
 */
static __rte_always_inline uint16_t
mlx5_tx_burst_tmpl(struct mlx5_txq_data *restrict txq,
		   struct rte_mbuf **restrict pkts,
		   uint16_t pkts_n,
		   unsigned int olx)
----

What we design is from another kind of thinking from CPU's point view:

commit 2e542da709371ee51d61d74c9a1b357ad34ae13e
Author: David Christensen <drc@linux.vnet.ibm.com>
Date:   Fri Aug 16 12:56:04 2019 -0500

    net/mlx5: add Altivec Rx

    Added mlx5_rxtx_vec_altivec.h which supports vectorized RX
    using Altivec vector code.  Modified associated build files
    to use the new code.

    Signed-off-by: David Christensen <drc@linux.vnet.ibm.com>
    Acked-by: Viacheslav Ovsiienko <viacheslavo@mellanox.com>
    Tested-by: Raslan Darawsheh <rasland@mellanox.com>

  reply index

Thread overview: 36+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-08-13  3:06 [dpdk-dev] [RFC v2 0/3] show the Rx/Tx burst description field Haiyue Wang
2019-08-13  3:06 ` [dpdk-dev] [RFC v2 1/3] ethdev: add the API for getting trace information Haiyue Wang
2019-08-13  3:24   ` Stephen Hemminger
2019-08-13  4:37     ` Wang, Haiyue
2019-08-13  9:57     ` David Marchand
2019-08-13 11:21       ` Wang, Haiyue
2019-08-13 12:51     ` Ray Kinsella
2019-09-06 14:21       ` Ferruh Yigit
2019-09-07  2:42         ` Wang, Haiyue
2019-09-09 11:23           ` Ferruh Yigit
2019-09-09 12:40             ` Bruce Richardson
2019-09-09 12:50               ` Ferruh Yigit
2019-09-09 13:17                 ` Ferruh Yigit
2019-09-10  4:36                   ` Wang, Haiyue
2019-09-10  8:06                     ` Ferruh Yigit
2019-09-10  8:37                       ` Wang, Haiyue
2019-09-10  9:14                         ` Ferruh Yigit
2019-09-10 11:41                           ` Wang, Haiyue
2019-09-10 15:00                             ` Ferruh Yigit
2019-09-10 15:17                               ` Wang, Haiyue
2019-09-10 15:33                                 ` Ferruh Yigit
2019-09-10 15:35                                   ` Wang, Haiyue
2019-09-10 14:19                           ` Wang, Haiyue
2019-09-10 15:03                             ` Ferruh Yigit
2019-09-10 15:18                               ` Wang, Haiyue
2019-09-10 15:36                                 ` Ferruh Yigit
2019-09-10 15:38                                   ` Wang, Haiyue
2019-09-10 15:06                     ` Ferruh Yigit
2019-09-10 15:21                       ` Wang, Haiyue
2019-09-10 15:35                         ` Ferruh Yigit
2019-09-10 15:37                           ` Wang, Haiyue
2019-10-26 16:45       ` Thomas Monjalon
2019-10-27  4:10         ` Wang, Haiyue [this message]
2019-08-15  9:07     ` Ray Kinsella
2019-08-13  3:06 ` [dpdk-dev] [RFC v2 2/3] testpmd: show the Rx/Tx burst description Haiyue Wang
2019-08-13  3:06 ` [dpdk-dev] [RFC v2 3/3] net/ice: support the Rx/Tx burst description trace Haiyue Wang

Reply instructions:

You may reply publically 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=E3B9F2FDCB65864C82CD632F23D8AB8773D80F70@shsmsx102.ccr.corp.intel.com \
    --to=haiyue.wang@intel.com \
    --cc=dev@dpdk.org \
    --cc=edwin.verplanke@intel.com \
    --cc=ferruh.yigit@intel.com \
    --cc=mdr@ashroe.eu \
    --cc=stephen@networkplumber.org \
    --cc=thomas@monjalon.net \
    --cc=viacheslavo@mellanox.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

DPDK-dev Archive on lore.kernel.org

Archives are clonable:
	git clone --mirror https://lore.kernel.org/dpdk-dev/0 dpdk-dev/git/0.git

	# If you have public-inbox 1.1+ installed, you may
	# initialize and index your mirror using the following commands:
	public-inbox-init -V2 dpdk-dev dpdk-dev/ https://lore.kernel.org/dpdk-dev \
		dev@dpdk.org
	public-inbox-index dpdk-dev

Example config snippet for mirrors

Newsgroup available over NNTP:
	nntp://nntp.lore.kernel.org/org.dpdk.dev


AGPL code for this site: git clone https://public-inbox.org/public-inbox.git