All of lore.kernel.org
 help / color / mirror / Atom feed
From: Vincent JARDIN <vincent.jardin-pdR9zngts4EAvxtiuMwx3w@public.gmane.org>
To: Thomas Graf <tgraf-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>
Cc: "dev-yBygre7rU0TnMu66kgdUjQ@public.gmane.org"
	<dev-yBygre7rU0TnMu66kgdUjQ@public.gmane.org>,
	dev-VfR2kkLFssw@public.gmane.org,
	Gerald Rogers
	<gerald.rogers-ral2JQCrhuEAvxtiuMwx3w@public.gmane.org>,
	dpdk-ovs-y27Ovi1pjclAfugRpC6u6w@public.gmane.org
Subject: Re: [ovs-dev] [PATCH RFC] dpif-netdev: Add support Intel DPDK based ports.
Date: Wed, 29 Jan 2014 11:26:58 +0100	[thread overview]
Message-ID: <52E8D772.9070302@6wind.com> (raw)
In-Reply-To: <52E8B88A.1070104-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>

Hi Thomas,

On 29/01/2014 09:15, Thomas Graf wrote:

 > The obvious and usual best practise would be for DPDK to guarantee
 > ABI stability between minor releases.
 >
 > Since dpdk-dev is copied as well, any comments?

DPDK's ABIs are not Kernel's ABIs, they are not POSIX, there is no 
standard. Currently, there is no such plan to have a stable ABI since we 
need to keep freedom to chase CPU cycles over having a stable ABI. For 
instance, some applications on top of the DPDK process the packets in 
less than 150 CPU cycles (have a look at testpmd:
   http://dpdk.org/browse/dpdk/tree/app/test-pmd )

I agree that some areas could be improved since they are not into the 
critical datapath of packets, but still other areas remain very CPU 
constraints. For instance:
http://dpdk.org/browse/dpdk/commit/lib/librte_ether/rte_ethdev.h?id=c3d0564cf0f00c3c9a61cf72bd4bd1c441740637
is bad:
    struct eth_dev_ops
is churned, no comment, and a #ifdef that changes the structure 
according to compilation!

Should an application use the librte libraries of the DPDK:
   - you can use RTE_VERSION and RTE_VERSION_NUM :
http://dpdk.org/doc/api/rte__version_8h.html#a8775053b0f721b9fa0457494cfbb7ed9
   - you can write your own wrapper (with CPU overhead) in order to have 
a stable ABI, that wrapper should be tight to the versions of the librte 
=> the overhead is part of your application instead of the DPDK,
   - *otherwise recompile your software, it is opensource, what's the 
issue?*

We are opened to any suggestion to have stable ABI, but it should never 
remove the options to have fast/efficient/compilation/CPU execution 
processing.

Best regards,
   Vincent

  parent reply	other threads:[~2014-01-29 10:26 UTC|newest]

Thread overview: 26+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-01-28  1:48 [PATCH RFC] dpif-netdev: Add support Intel DPDK based ports pshelar-l0M0P4e3n4LQT0dZR+AlfA
     [not found] ` <1390873715-26714-1-git-send-email-pshelar-l0M0P4e3n4LQT0dZR+AlfA@public.gmane.org>
2014-01-28  4:49   ` Ben Pfaff
     [not found]     ` <20140128044950.GA4545-l0M0P4e3n4LQT0dZR+AlfA@public.gmane.org>
2014-01-28  5:28       ` [ovs-dev] " Pravin Shelar
     [not found]         ` <CALnjE+pFMa86Uz_9LZiZ3p-VzJwazQ18kwfZ62m6=2LZqQA7tA-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2014-01-28 14:47           ` Vincent JARDIN
     [not found]             ` <52E7C31A.7050409-pdR9zngts4EAvxtiuMwx3w@public.gmane.org>
2014-01-28 15:54               ` Thomas Graf
     [not found]                 ` <52E7D2A8.400-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>
2014-01-28 18:20                   ` Pravin Shelar
2014-01-28 17:56               ` Pravin Shelar
     [not found]                 ` <CALnjE+qT-zCany+1t53paHmwkycJsftbEex6Q=OfEqQPNOt5nA-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2014-01-29  0:15                   ` Vincent JARDIN
     [not found]                     ` <52E8482D.10804-pdR9zngts4EAvxtiuMwx3w@public.gmane.org>
2014-01-29 19:32                       ` Pravin Shelar
2014-01-28 15:48   ` Thomas Graf
     [not found]     ` <52E7D13B.9020404-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>
2014-01-28 18:17       ` [ovs-dev] " Pravin Shelar
     [not found]         ` <CALnjE+rP29s8mkiKPtppt-a8jMn-B2qS7+re2ZBd8bK46ozUPA-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2014-01-29  8:15           ` Thomas Graf
     [not found]             ` <52E8B88A.1070104-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>
2014-01-29 10:26               ` Vincent JARDIN [this message]
     [not found]                 ` <52E8D772.9070302-pdR9zngts4EAvxtiuMwx3w@public.gmane.org>
2014-01-29 11:14                   ` Thomas Graf
     [not found]                     ` <52E8E2AB.1080600-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>
2014-01-29 16:34                       ` Vincent JARDIN
     [not found]                         ` <52E92DA6.9070704-pdR9zngts4EAvxtiuMwx3w@public.gmane.org>
2014-01-29 17:14                           ` Thomas Graf
     [not found]                             ` <52E936D9.4010207-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>
2014-01-29 18:42                               ` Stephen Hemminger
2014-01-29 20:47                               ` François-Frédéric Ozog
2014-01-29 23:15                                 ` Thomas Graf
2014-03-13  7:37                                 ` David Nyström
2014-01-29  8:56   ` Prashant Upadhyaya
     [not found]     ` <C7CE7EEF248E2B48BBA63D0ABEEE700C5A2A24F762-2zbAqoMm/rLQX//ci7WS+53eMK7GYZcrXYFosVITYPE@public.gmane.org>
2014-01-29 21:29       ` Pravin Shelar
     [not found]         ` <CALnjE+rXdqzo2y9tKevsu7R5=kp-do+Yhv1Nr7Q9jKEC5Ror3A-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2014-01-30 10:15           ` Prashant Upadhyaya
     [not found]             ` <C7CE7EEF248E2B48BBA63D0ABEEE700C5A2A24F97D-2zbAqoMm/rLQX//ci7WS+53eMK7GYZcrXYFosVITYPE@public.gmane.org>
2014-01-30 16:27               ` [dpdk-dev] " Rogers, Gerald
2014-01-29 10:01   ` [ovs-dev] " Thomas Graf
     [not found]     ` <52E8D17C.8050100-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>
2014-01-29 21:49       ` Pravin Shelar

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=52E8D772.9070302@6wind.com \
    --to=vincent.jardin-pdr9zngts4eavxtiumwx3w@public.gmane.org \
    --cc=dev-VfR2kkLFssw@public.gmane.org \
    --cc=dev-yBygre7rU0TnMu66kgdUjQ@public.gmane.org \
    --cc=dpdk-ovs-y27Ovi1pjclAfugRpC6u6w@public.gmane.org \
    --cc=gerald.rogers-ral2JQCrhuEAvxtiuMwx3w@public.gmane.org \
    --cc=tgraf-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org \
    /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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.