[dpdk-dev] [PATCH 0/2] app/testpmd: introduce new commands in forward topology

Gaëtan Rivet gaetan.rivet at 6wind.com
Wed May 16 16:55:34 CEST 2018


Hi,

On Wed, May 09, 2018 at 03:34:37PM +0300, Wisam Jaddo wrote:
> 1- Add new forward topology (custom): This toplogy will
> allow to create any topoloy you may need.
> 2- Add new command to set the custom toplogy.
> 3- Add new command to set the topoly on the fly.

I have had the same kind of issues when developping a PMD for a
prototype NIC that had some queues behaving weirdly, or when using
testpmd for regression testing with a incompatible topology that was
impossible to change. I think this use-case is important for testpmd and
this should be useful for many people.

I think however that your approach is not flexible enough.

One should not only be able to edit ports pairing, but also select
specific (Rx) queue. Additionally, it should be possible to change the
lcore forwarding a specific pair.

Testpmd uses the concept of streams internally. I think the only way to
have enough flexibility here is to expose this concept as a set of
commands to define custom streams, and then to bind those streams to
sets of lcores.

You have found after testing that TX queues cannot be shared. This tool is
also used for pure IO performance regression testing. Adding the support
for shared TX queues would impact this use-case and I think this is not
acceptable. At the very least, the default configuration should not be
impacted (and I think compile-time options are now frowned upon).

This is the reason it should be necessary to be able to define the set of
lcores doing the forwarding: The lcore defines the TX queue used by a stream,
this way the current testpmd arch is respected.

Regards,
-- 
Gaëtan Rivet
6WIND


More information about the dev mailing list