DPDK patches and discussions
 help / color / mirror / Atom feed
From: Robert Sanford <rsanford2@gmail.com>
To: Bruce Richardson <bruce.richardson@intel.com>
Cc: "dev@dpdk.org" <dev@dpdk.org>
Subject: Re: [dpdk-dev] [PATCH v2 0/3] timer: fix rte_timer_reset
Date: Wed, 25 Feb 2015 08:34:57 -0500	[thread overview]
Message-ID: <CA+cr1co+2qrQur+4d5BVdqGz1m15Dru_OM8d0=T+TcRUjP-23A@mail.gmail.com> (raw)
In-Reply-To: <20150225111643.GC4896@bricha3-MOBL3>

On Wed, Feb 25, 2015 at 6:16 AM, Bruce Richardson <
bruce.richardson@intel.com> wrote:

> On Wed, Feb 25, 2015 at 06:02:24AM -0500, Robert Sanford wrote:
>
> >
> > One question about lib rte_timer that's been troubling me for a while:
> How
> > are skip lists better than BSD-style timer wheels?
> >
> > --
>
> The skip list may not be any better than a timer wheel - it's just what is
> used
> now, and it does give pretty good performance (insert O(log n) [up to a few
> million timers per core], expiry O(1)).
> Originally in DPDK, the timers were maintained in a regular sorted linked
> list,
> but that suffered from scalability issues when starting timers, or stopped
> before
> expiry. The skip-list was therefore a big improvement on that, and gave us
> much greater scalability in timers, without any regressions in
> performance. I
> don't know if anyone has tried to implement and benchmark a timer-wheel
> based
> rte_timer library replacement. I'd be interested to see a performance
> comparison
> between the two implementations! :-)
>
> Regards,
> /Bruce
>
>
I've wanted to try out the timer-wheels since before the skip-list version,
but it just hasn't made it to the top of my priority list.
The other thing that concerns me about the skip-list implementation is the
extra cache line that all those pointers consume.

--
Thanks,
Robert

  reply	other threads:[~2015-02-25 13:34 UTC|newest]

Thread overview: 14+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-02-03 20:42 [dpdk-dev] [RFC PATCH] rte_timer: Fix rte_timer_reset return value rsanford2
2015-02-06 11:10 ` Olivier MATZ
2015-02-06 17:26   ` Robert Sanford
2015-02-08 10:53     ` Olivier MATZ
2015-02-25  4:09 ` [dpdk-dev] [PATCH v2 0/3] timer: fix rte_timer_reset Robert Sanford
2015-02-25  8:58   ` Olivier MATZ
2015-02-25  9:46     ` Thomas Monjalon
2015-02-25 11:02       ` Robert Sanford
2015-02-25 11:09         ` Thomas Monjalon
2015-02-25 11:16         ` Bruce Richardson
2015-02-25 13:34           ` Robert Sanford [this message]
2015-02-25  4:09 ` [dpdk-dev] [PATCH v2 1/3] timer: pause in rte_timer_reset_sync Robert Sanford
2015-02-25  4:09 ` [dpdk-dev] [PATCH v2 2/3] timer: fix stress test on multiple runs Robert Sanford
2015-02-25  4:09 ` [dpdk-dev] [PATCH v2 3/3] timer: fix rte_timer_reset return value Robert Sanford

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+cr1co+2qrQur+4d5BVdqGz1m15Dru_OM8d0=T+TcRUjP-23A@mail.gmail.com' \
    --to=rsanford2@gmail.com \
    --cc=bruce.richardson@intel.com \
    --cc=dev@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).