From: Bruce Richardson <bruce.richardson@intel.com>
To: Vincent JARDIN <vincent.jardin@6wind.com>
Cc: "dev@dpdk.org" <dev@dpdk.org>
Subject: Re: [dpdk-dev] DPDK User Space: Session onUseability and Ease of Use
Date: Wed, 14 Oct 2015 17:34:19 +0100 [thread overview]
Message-ID: <20151014163417.GA7420@bricha3-MOBL3> (raw)
In-Reply-To: <561E686B.4050902@6wind.com>
On Wed, Oct 14, 2015 at 04:36:27PM +0200, Vincent JARDIN wrote:
> Thomas, John,
>
> thanks for your notes.
>
> Enclosed the contents of our chats,
>
> On 13/10/2015 18:36, Mcnamara, John wrote:
> >* PMD lite
> >
> > - Do we need a lighter PMD model? Perhaps based on the Mellanox
> > model.
> > - Vincent suggested be could remove 90% of the code. I'll leave
> > Vincent explain this one.
>
> benefits of 100% userland drivers:
> - no dependency on getting kernel patch upstreams first
> - it is possible to run on a latest HW even when the Linux host (or host
> OS) does not support the new NIC/boards supported by the DPDK
>
> drawbacks of 100% userland drivers:
> - redundancy of source code (duplication into the kernel and userland)
> => more maintenance
> - DPDK PMDs are in fact outdated while kernel drivers are supporting
> latest HW (port management - optics - , latest HW revisions, managing
> firmware updates) more frequently
> - do not run when not root applications
> - cannot reuse port management tools from the kernels (ethtool, etc.)
>
> ixgbe pmd
> =========
> 100% lines of userland
> must be run as root
> ~ 40K lines
> ~ kernel overlaps with
> http://dpdk.org/browse/dpdk/tree/drivers/net/ixgbe/base
> ~ mostly only
> http://dpdk.org/browse/dpdk/tree/drivers/net/ixgbe/ixgbe_rxtx[_vec].c is
> needed, other files are not needed (6k lines of code)
>
> mlx4 pmd
> ========
> 10% lines userland, then using kernel's ones
> could be run as a non root process
> ~ 5.2K lines of code
> ~ the rxtx.c file is http://dpdk.org/browse/dpdk/tree/drivers/net/mlx4/
> BUT using infiniband :( => should be cleand up to use bare minimum like,
> + /* Allocate protection domain. */
> http://dpdk.org/browse/dpdk/tree/drivers/net/mlx4/mlx4.c#n4828
>
> + Register memory regions -> ibv_reg_mr()
> http://dpdk.org/browse/dpdk/tree/drivers/net/mlx4/mlx4.c#n792
>
> Best regards,
> Vincent
Hi Vincent,
is the approach described for the mlx4 driver not dependent upon the hardware
having support for infiniband verbs, in which case I don't see how it could be
used for other NICs. Has an attempt been made to create a driver for another
NIC family using this approach to prove it is generally applicable?
/Bruce
next prev parent reply other threads:[~2015-10-14 16:34 UTC|newest]
Thread overview: 11+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-10-08 18:29 Thomas F Herbert
2015-10-13 16:36 ` Mcnamara, John
2015-10-13 20:06 ` Thomas Monjalon
2015-10-14 6:51 ` Dave Neary
2015-10-14 13:16 ` Vincent JARDIN
2015-10-14 10:25 ` Panu Matilainen
2015-10-14 13:21 ` Vincent JARDIN
2015-10-14 14:36 ` Vincent JARDIN
2015-10-14 16:34 ` Bruce Richardson [this message]
2015-10-19 13:55 ` Simon Kågström
-- strict thread matches above, loose matches on Subject: below --
2015-10-08 16:38 Thomas Herbert
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=20151014163417.GA7420@bricha3-MOBL3 \
--to=bruce.richardson@intel.com \
--cc=dev@dpdk.org \
--cc=vincent.jardin@6wind.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).