DPDK patches and discussions
 help / color / mirror / Atom feed
From: "Mokhtar, Amr" <amr.mokhtar@intel.com>
To: "Yigit, Ferruh" <ferruh.yigit@intel.com>, "dev@dpdk.org" <dev@dpdk.org>
Cc: "thomas@monjalon.net" <thomas@monjalon.net>,
	"Burakov, Anatoly" <anatoly.burakov@intel.com>,
	"De Lara Guarch, Pablo" <pablo.de.lara.guarch@intel.com>,
	"Power, Niall" <niall.power@intel.com>,
	"Macnamara, Chris" <chris.macnamara@intel.com>
Subject: Re: [dpdk-dev] [PATCH v3 3/5] bbdev: test applications
Date: Sat, 23 Dec 2017 00:09:06 +0000	[thread overview]
Message-ID: <3D3765A8CDB52A4C8B410430AA19CB236EC654A9@IRSMSX104.ger.corp.intel.com> (raw)
In-Reply-To: <409ed602-6bc4-d2e2-488d-5c512586173f@intel.com>



> -----Original Message-----
> From: Yigit, Ferruh
> Sent: Monday 11 December 2017 19:01
> To: Mokhtar, Amr <amr.mokhtar@intel.com>; dev@dpdk.org
> Cc: thomas@monjalon.net; Burakov, Anatoly <anatoly.burakov@intel.com>; De
> Lara Guarch, Pablo <pablo.de.lara.guarch@intel.com>; Power, Niall
> <niall.power@intel.com>; Macnamara, Chris <chris.macnamara@intel.com>
> Subject: Re: [dpdk-dev] [PATCH v3 3/5] bbdev: test applications
> 
> On 12/7/2017 1:40 PM, Amr Mokhtar wrote:
> > - Full test suite for bbdev
> > - Test App works seamlessly on all PMDs registered with bbdev
> >  framework
> > - A python script is provided to make our life easier
> 
> Can you please describe what the script is for?

In order to run a test many parameters are required, like EAL, test vectors to use
the type of test (latency, offload, throughput), the binary application location,
number of operations, bursts size, etc. The script eases all that, and assumes
default values, in case they were not provided by the tester.
In its simplest form, it can execute as a smoke test by executing:
$ ./test-bbdev.py

This will run a default test with default parameters on bbdev_null device.

> 
> > - Supports execution of tests by parsing Test Vector files
> 
> Can you please describe what are test vector files?

Test vectors are set of input and output parameters when combined together
form one test scenario. These values are logically correlated to provide
a realistic test scenario. Furthermore, they include the data in the format that 
matches the module under test.

In our case, we are concerned of testing various Turbo coding scenarios, so when
testing a decode operation for example, the input data in the test should match
the Turbo encoded data as specified in 3GPP TS 36.212 specs, namely the "virtual
circular buffer."

Test-bbdev application parses the parameters from the test vector file into its
local memory to form the op (operation) structure and loads the data into the
input mbufs and saves the expected output. It enqueues the op structures, 
dequeues them, then compares the computed output with the expected output.
If matching, the test is passed.

> <...>
> 
> > +include $(RTE_SDK)/mk/rte.vars.mk
> > +
> > +ifeq ($(CONFIG_RTE_TEST_BBDEV),y)
> 
> You don't need this ifdef I think, although I can see testpmd has it ...

Corrected.

> 
> > +
> > +#
> > +# library name
> > +#
> > +APP = testbbdev
> > +
> > +CFLAGS += -O3
> > +CFLAGS += $(WERROR_FLAGS)
> > +
> > +#
> > +# all sources are stored in SRCS-y
> > +#
> > +SRCS-$(CONFIG_RTE_LIBRTE_BBDEV) += main.c
> > +SRCS-$(CONFIG_RTE_LIBRTE_BBDEV) += test_bbdev.c
> > +SRCS-$(CONFIG_RTE_LIBRTE_BBDEV) += test_bbdev_perf.c
> > +SRCS-$(CONFIG_RTE_LIBRTE_BBDEV) += test_bbdev_vector.c
> 
> If you remove above wrapping ifdef, you may use CONFIG_RTE_TEST_BBDEV
> instead.

Corrected.
 
> <...>
> 
> > +int
> > +unit_test_suite_runner(struct unit_test_suite *suite)
> 
> Is test-bbdev application a suit of test cases? What is the benefit of having
> separate application comparing adding unit tests to test/ folder?

Yes it is a suite of test ceses.
The benefit is to have all test applications self-contained and separate.
So, every device abstraction library has its own test-xxx folder.

> <...>

  reply	other threads:[~2017-12-23  0:09 UTC|newest]

Thread overview: 16+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-12-07 21:40 [dpdk-dev] [PATCH v3 1/5] bbdev: librte_bbdev library Amr Mokhtar
2017-12-07 21:40 ` [dpdk-dev] [PATCH v3 2/5] bbdev: PMD drivers (null/turbo_sw) Amr Mokhtar
2017-12-11 19:00   ` Ferruh Yigit
2017-12-19 19:09     ` Mokhtar, Amr
2017-12-07 21:40 ` [dpdk-dev] [PATCH v3 3/5] bbdev: test applications Amr Mokhtar
2017-12-11 19:01   ` Ferruh Yigit
2017-12-23  0:09     ` Mokhtar, Amr [this message]
2017-12-07 21:40 ` [dpdk-dev] [PATCH v3 4/5] bbdev: sample app Amr Mokhtar
2017-12-07 21:40 ` [dpdk-dev] [PATCH v3 5/5] bbdev: documentation Amr Mokhtar
2017-12-11 19:01   ` Ferruh Yigit
2017-12-19 19:34     ` Mokhtar, Amr
2017-12-18 14:26   ` Kovacevic, Marko
2017-12-23  0:11     ` Mokhtar, Amr
2017-12-07 21:40 ` [dpdk-dev] [PATCH v3 0/5] Wireless Baseband Device (bbdev) Amr Mokhtar
2017-12-09  2:44 ` [dpdk-dev] [PATCH v3 1/5] bbdev: librte_bbdev library Ferruh Yigit
2017-12-19 19:03   ` Mokhtar, Amr

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=3D3765A8CDB52A4C8B410430AA19CB236EC654A9@IRSMSX104.ger.corp.intel.com \
    --to=amr.mokhtar@intel.com \
    --cc=anatoly.burakov@intel.com \
    --cc=chris.macnamara@intel.com \
    --cc=dev@dpdk.org \
    --cc=ferruh.yigit@intel.com \
    --cc=niall.power@intel.com \
    --cc=pablo.de.lara.guarch@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).