[ovs-dev] Threaded userspace datapath

Jesse Gross jesse at nicira.com
Tue Oct 2 02:29:26 UTC 2012

On Sat, Sep 29, 2012 at 12:17 AM, Giuseppe Lettieri
<g.lettieri at iet.unipi.it> wrote:
> Il giorno 29/set/2012, alle ore 01:44, Jesse Gross <jesse at nicira.com> ha scritto:
>> Does this actually require changing the main loop?  If it really is
>> the poll related changes that you mention it seems like they could be
>> contained to the netdevs and userspace datapath.  You could handle a
>> batch of packets each time through the main loop.
> Well, I see what you mean. Indeed, it was me that raised the issue on the list. But the poll related changes I mentioned where just an hypothesis. Take the batching issue you are referring to, for example: if I disable batching in the threaded datapath (just put batch=1), performance drops by  ~20% only. From this I get that the big problem with the existing loop lies elsewhere. I am not saying that it really needs drastic changes, only that it might, and we had no time to investigate. This is only in reply to your question of why we continued down this road.
> I understand that our lack of time is no good reason to accept a patch. On the other end, I tried to push it anyway since it solves a real problem for FreeBSD people, maybe also PlanetLab users, and possibly others.

Thanks, I definitely understand trying to get something in now even if
there are potentially more optimizations that can be made in the
future.  As I mentioned in the other message, processes seem a lot
simpler to me as an immediate solution (with hopefully known
performance characteristics) and maybe we can get some of the other
optimizations to the main loop in the future.

More information about the dev mailing list