DPDK patches and discussions
 help / color / mirror / Atom feed
From: Stephen Hemminger <stephen@networkplumber.org>
To: Ymo Lists <ymolists@gmail.com>
Cc: "dev@dpdk.org" <dev@dpdk.org>
Subject: Re: [dpdk-dev] Is it possible to have dpdk running with no dependency on a nic ?
Date: Sun, 16 Feb 2014 11:02:41 -0800	[thread overview]
Message-ID: <20140216110241.0e789750@nehalam.linuxnetplumber.net> (raw)
In-Reply-To: <CACSP18QdpFb71x0JymmDuicz7ft68U6cbcNVC=i47yprWp4FWQ@mail.gmail.com>

On Fri, 14 Feb 2014 15:11:29 -0500
Ymo Lists <ymolists@gmail.com> wrote:

> "Enqueuing and dequeuing items from an rte_ring using the rings-based PMD
> may be slower than using the native rings API. This is because Intel® DPDK
> Ethernet drivers make use of function pointers to call the appropriate
> enqueue or dequeue functions, while the rte_ring specific functions are
> direct function calls in the code and are often inlined by the compiler."
> 
> Is that statement correct ? I would imagine that inlined code would be be
> faster than using function pointers ?

Actually, the Intel DPDK has a bad case of inlineitis. The code for ring's
and other parts use inline on largish functions which bloats the code without
any perceivable gain in performance. The larger code causes more cache misses
which actually hurt performance.  Also using GCC link time optimization helps
to reduce any need for inlining larger code bits.

  reply	other threads:[~2014-02-16 19:01 UTC|newest]

Thread overview: 10+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-02-12 18:21 Ymo Lists
2014-02-13 20:19 ` Ymo Lists
2014-02-14  8:42   ` Vivek Soni
2014-02-14 17:20     ` Ymo Lists
2014-02-14 18:20       ` Jayakumar, Muthurajan
2014-02-14 20:11         ` Ymo Lists
2014-02-16 19:02           ` Stephen Hemminger [this message]
2014-02-17 12:49             ` jigsaw
2014-02-17 16:41               ` Stephen Hemminger
2014-02-17 17:52                 ` Venkatesan, Venky

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=20140216110241.0e789750@nehalam.linuxnetplumber.net \
    --to=stephen@networkplumber.org \
    --cc=dev@dpdk.org \
    --cc=ymolists@gmail.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).