Date: Wed, 22 May 2013 15:08:37 -0400 From: Ryan Stone <rysto32@gmail.com> To: Luigi Rizzo <rizzo@iet.unipi.it> Cc: FreeBSD Net <net@freebsd.org> Subject: Re: surprise surprise (VM related) [luigi@FreeBSD.org: svn commit: r250911 - head/sys/kern] Message-ID: <CAFMmRNxKKgFa-60djwH0g=62M_%2Bwx-BkP2_LKccmN%2B0_qkrjYw@mail.gmail.com> In-Reply-To: <20130522164244.GB95808@onelab2.iet.unipi.it> References: <20130522164244.GB95808@onelab2.iet.unipi.it>
next in thread | previous in thread | raw e-mail | index | archive | help
On Wed, May 22, 2013 at 12:42 PM, Luigi Rizzo <rizzo@iet.unipi.it> wrote: > all that work on paravirtualization (as presented at bsdcan) > > http://info.iet.unipi.it/~luigi/netmap/talk-bsdcan-2013.html > > just to discover that simply enabling DEVICE_POLLING (10-years old > technology) gives the same performance gains plus livelock-avoidance. > > And no, linux's NAPI is nowhere near us. > > cheers > luigi > A couple of years ago I started working on upstreaming some DEVICE_POLLING improvements from $WORK that incorporated feedback from polled interfaces to drive rescheduling of a polling iteration (rather than waiting for the next hardclock() to reschedule polling) but I never finished it. It works fine, but I didn't get a chance to test performance. It's available here: https://gitorious.org/~rysto/freebsd/rystos-freebsd-head/commit/e27db681b96cced7d3128ad3268f2cbf7474925a In the same repository I also have a branch that extends DEVICE_POLLING to work with multiple netisr threads.
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?CAFMmRNxKKgFa-60djwH0g=62M_%2Bwx-BkP2_LKccmN%2B0_qkrjYw>