DPDK usage discussions
 help / color / mirror / Atom feed
From: Cliff Burdick <shaklee3@gmail.com>
To: users <users@dpdk.org>
Subject: [dpdk-users] KNI Threads/Cores
Date: Wed, 8 Jun 2016 09:30:27 -0700	[thread overview]
Message-ID: <CA+Gp1naKvKKF5vNx2Q_Xg-bzBpYfpMbcUc8DtmyUZKxFvmhqOA@mail.gmail.com> (raw)

Hi, I have an application with two sockets where each core I'm planning to
transmit and receive a fairly large amount of traffic per core. Each core
right now handles a single queue of either TX or RX of a given port. Across
all the cores, I may be processing up to 12 ports. I also need to handle
things like ARP and ping, so I'm going to add in the KNI driver to handle
that. Since the amount of traffic I'm expecting that I'll need to forward
to Linux is very small, it seems like I should be able to dedicate one
lcore per socket to handle this functionality and have the dataplane cores
pass the traffic off to this core using rte_kni_tx_burst().

My question is, first of all, is this possible? It seems like I can
configure the KNI driver to start in "single thread" mode. From that point,
I want to initialize one KNI device for each port, and have each kernel
lcore on each processor handle that traffic. I believe if I call
rte_kni_alloc with core_id set to the kernel lcore for each device, then in
the end I'll have something like 6 KNI devices on socket one being handled
by lcore 0, and 6 KNI devices on socket 2 being handled by lcore 31 as an
example. Then my threads that are handling the dataplane tx/rx can simply
be passed a pointer to their respective rte_kni device. Does this sound
correct?

Also, the sample says the core affinity needs to be set using taskset. Is
that already taken care of with conf.core_id in rte_kni_alloc or do I still
need to set it?

Thanks

             reply	other threads:[~2016-06-08 16:30 UTC|newest]

Thread overview: 7+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-06-08 16:30 Cliff Burdick [this message]
2016-06-08 16:45 ` Matt Laswell
2016-06-08 19:31   ` Cliff Burdick
2016-06-08 19:31 ` Ferruh Yigit
2016-06-08 19:48   ` Cliff Burdick
2016-06-08 19:49     ` Cliff Burdick
2016-06-09 16:29     ` Ferruh Yigit

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=CA+Gp1naKvKKF5vNx2Q_Xg-bzBpYfpMbcUc8DtmyUZKxFvmhqOA@mail.gmail.com \
    --to=shaklee3@gmail.com \
    --cc=users@dpdk.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 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).