From: "François-Frédéric Ozog" <ff-SpBG2i6TTxU@public.gmane.org>
To: "'Sambath Kumar Balasubramanian'"
<sambath.balasubramanian-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
Cc: dev-VfR2kkLFssw@public.gmane.org
Subject: Re: Question on the Ring Library
Date: Wed, 4 Dec 2013 14:47:27 +0100 [thread overview]
Message-ID: <03b201cef0f7$5fba0d20$1f2e2760$@com> (raw)
In-Reply-To: <CAPrcauPLZrC5ve4ZX47de5JzT8fSDi6Za3Oe2wKKLpKNTuc6_g-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
Hi
On a 10Gbps link, there is a new packet every 650ns on average on each
direction. So handling latency is extremely important.
Traditional "fast" userland mutexes involves system call and scheduling
costs (look at the kernel code: it is "hairy"). I measured difference
between mutex controlled fifo and DPDK controlled fifo on a Xeon E5-2680v2,
1867MHz RAM: for times the performance... I consider the cost of a mutex
lock is something close to 400ns on average (well I don't say that it always
costs that, but the delays can be not predictable and extremely high - I saw
a few ms even if you use isolcpus and precise affinities-). So if you plan
to do 10Gbps stuff, I guess polling is the only way to go.
François-Frédéric
> -----Message d'origine-----
> De : dev [mailto:dev-bounces-VfR2kkLFssw@public.gmane.org] De la part de Sambath Kumar
> Balasubramanian
> Envoyé : mercredi 4 décembre 2013 12:47
> À : dev-VfR2kkLFssw@public.gmane.org
> Objet : [dpdk-dev] Question on the Ring Library
>
> Hi,
>
> The ring library seems to be an excellent IPC. But looking at one use
> case where the fast path code posts events to event thread for example,
the
> event thread will spend some cycles polling the ring rather than waiting
> for the event. One approach could be a fast path code basically posts the
> event in the ring as is today and there is a background thread that polls
> the queues and wakes up the event threads. This is similar to Linux
> SOFTIRQs.The event threads are asynchronous. Is this a fair model to avoid
> extra polling CPU cycles by the event threads? Is there any other
> alternatives in dpdk?
>
> Regards,
> Sambath
next prev parent reply other threads:[~2013-12-04 13:47 UTC|newest]
Thread overview: 9+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-12-04 11:46 Question on the Ring Library Sambath Kumar Balasubramanian
[not found] ` <CAPrcauPLZrC5ve4ZX47de5JzT8fSDi6Za3Oe2wKKLpKNTuc6_g-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2013-12-04 13:47 ` François-Frédéric Ozog [this message]
2013-12-04 14:00 ` Sambath Kumar Balasubramanian
[not found] ` <CAPrcauMiBS=T8p9bd1w9_DsGoke7VY2xk=fhDXvPf_YEMrzVHQ-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2013-12-04 20:02 ` François-Frédéric Ozog
2013-12-04 21:49 ` Sambath Kumar Balasubramanian
2013-12-04 21:25 ` Stephen Hemminger
[not found] ` <20131204132548.05a151fe-We1ePj4FEcvRI77zikRAJc56i+j3xesD0e7PPNI6Mm0@public.gmane.org>
2013-12-04 21:47 ` Sambath Kumar Balasubramanian
[not found] ` <CAPrcauOxmV0nYj1oznHz2s46br=pY=9GjmemKOT5_XQK1RhcUw-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2013-12-04 21:51 ` Stephen Hemminger
[not found] ` <20131204135125.0fb7bf3f-We1ePj4FEcvRI77zikRAJc56i+j3xesD0e7PPNI6Mm0@public.gmane.org>
2013-12-04 21:58 ` Sambath Kumar Balasubramanian
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='03b201cef0f7$5fba0d20$1f2e2760$@com' \
--to=ff-spbg2i6ttxu@public.gmane.org \
--cc=dev-VfR2kkLFssw@public.gmane.org \
--cc=sambath.balasubramanian-Re5JQEeQqe8AvxtiuMwx3w@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.