From: Viacheslav Ovsiienko <viacheslavo@mellanox.com>
To: dev@dpdk.org
Cc: ferruh.yigit@intel.com, thomas@monjalon.net, bernard.iremonger@intel.com
Subject: [dpdk-dev] [PATCH v2 0/3] app/testpmd: qualify Rx/Tx profiling data on burst size
Date: Thu, 19 Mar 2020 13:50:48 +0000 [thread overview]
Message-ID: <1584625851-10291-1-git-send-email-viacheslavo@mellanox.com> (raw)
In-Reply-To: <1561553317-16777-1-git-send-email-viacheslavo@mellanox.com>
There is the CONFIG_RTE_TEST_PMD_RECORD_CORE_CYCLES configuration
parameter enabling the lightweight profiler for the forwarding
routines that provides the time spent in the routines and estimates
the CPU cycles required to process one packet.
It would be good to have separated data for the Rx and Tx directions.
Beside this, the performance depends on the actual burst size, the profiling
data per burst size are meaningful and would help detect the performance
anomalies.
To control this profiling statistics the new testpmd command is introduced:
set fwdprof (flags)
This command controls which profiling statistics is being gathered
in runtime:
- bit 0 - enables profiling the entire forward routine, counts the ticks
spent in the forwarding routine, is set by default. Provides
the same data as previous implementation.
- bit 1 - enables gathering the profiling data for the transmit datapath,
counts the ticks spent within rte_eth_tx_burst() routine,
is cleared by default, extends the existing statistics.
- bit 2 - enables gathering the profiling data for the receive datapath,
counts the ticks spent within rte_eth_rx_burst() routine,
is cleared by default, extends the existing statistics.
Signed-off-by: Viacheslav Ovsiienko <viacheslavo@mellanox.com>
---
v2: - run time flags instead of compile time configuration
- detailed statistics per burst size
v1: http://patches.dpdk.org/patch/55407/
Viacheslav Ovsiienko (3):
app/testpmd: add profiling flags set command
app/testpmd: gather Rx and Tx routines profiling
app/testpmd: qualify profiling statistics on burst size
app/test-pmd/cmdline.c | 15 ++++++++
app/test-pmd/config.c | 10 +++++
app/test-pmd/csumonly.c | 26 ++++++-------
app/test-pmd/flowgen.c | 26 ++++++-------
app/test-pmd/icmpecho.c | 27 +++++++-------
app/test-pmd/iofwd.c | 26 ++++++-------
app/test-pmd/macfwd.c | 26 ++++++-------
app/test-pmd/macswap.c | 26 ++++++-------
app/test-pmd/rxonly.c | 14 ++-----
app/test-pmd/softnicfwd.c | 26 ++++++-------
app/test-pmd/testpmd.c | 52 ++++++++++++++++++++++----
app/test-pmd/testpmd.h | 58 ++++++++++++++++++++++++++++-
app/test-pmd/txonly.c | 25 ++++++-------
doc/guides/testpmd_app_ug/testpmd_funcs.rst | 22 +++++++++++
14 files changed, 256 insertions(+), 123 deletions(-)
--
1.8.3.1
next prev parent reply other threads:[~2020-03-19 13:51 UTC|newest]
Thread overview: 29+ messages / expand[flat|nested] mbox.gz Atom feed top
2019-06-26 12:48 [dpdk-dev] [PATCH] app/testpmd: add profiling for Rx/Tx burst routines Viacheslav Ovsiienko
2019-06-26 12:57 ` Bruce Richardson
2019-06-26 13:19 ` Slava Ovsiienko
2019-06-26 13:21 ` Bruce Richardson
2019-06-27 4:48 ` Slava Ovsiienko
2019-06-28 13:45 ` Iremonger, Bernard
2019-06-28 14:20 ` Bruce Richardson
2019-07-01 4:57 ` Slava Ovsiienko
2019-07-01 8:15 ` Bruce Richardson
2019-09-30 12:32 ` Yigit, Ferruh
2020-03-19 13:50 ` Viacheslav Ovsiienko [this message]
2020-03-19 13:50 ` [dpdk-dev] [PATCH v2 1/3] app/testpmd: add profiling flags set command Viacheslav Ovsiienko
2020-04-02 11:15 ` Thomas Monjalon
2020-04-09 11:56 ` Ferruh Yigit
2020-04-13 7:56 ` Slava Ovsiienko
2020-04-13 12:23 ` Thomas Monjalon
2020-04-14 9:07 ` Ferruh Yigit
2020-03-19 13:50 ` [dpdk-dev] [PATCH v2 2/3] app/testpmd: gather Rx and Tx routines profiling Viacheslav Ovsiienko
2020-04-02 11:20 ` Thomas Monjalon
2020-04-02 11:23 ` Slava Ovsiienko
2020-03-19 13:50 ` [dpdk-dev] [PATCH v2 3/3] app/testpmd: qualify profiling statistics on burst size Viacheslav Ovsiienko
2020-03-20 6:13 ` Jerin Jacob
2020-04-09 11:46 ` Ferruh Yigit
2020-04-09 12:49 ` Jerin Jacob
2020-03-20 16:03 ` Andrzej Ostruszka
2020-04-02 11:21 ` Thomas Monjalon
2020-04-09 12:03 ` Ferruh Yigit
2020-04-09 12:09 ` Thomas Monjalon
2020-04-02 11:13 ` [dpdk-dev] [PATCH v2 0/3] app/testpmd: qualify Rx/Tx profiling data " Thomas Monjalon
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=1584625851-10291-1-git-send-email-viacheslavo@mellanox.com \
--to=viacheslavo@mellanox.com \
--cc=bernard.iremonger@intel.com \
--cc=dev@dpdk.org \
--cc=ferruh.yigit@intel.com \
--cc=thomas@monjalon.net \
/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).