User: Password:
Subscribe / Log in / New account

Re: [benchmark] 1% performance overhead of paravirt_ops on native kernels

From:  Chris Mason <>
To:  Ulrich Drepper <>
Subject:  Re: [benchmark] 1% performance overhead of paravirt_ops on native kernels
Date:  Tue, 2 Jun 2009 11:03:39 -0400
Message-ID:  <20090602150339.GF3914@think>
Cc:  Ingo Molnar <>, Nick Piggin <>, Jeremy Fitzhardinge <>, "H. Peter Anvin" <>, Thomas Gleixner <>, Linux Kernel Mailing List <>, Andrew Morton <>, Linus Torvalds <>, Peter Zijlstra <>, Avi Kivity <>, Arjan van de Ven <>
Archive-link:  Article

On Tue, Jun 02, 2009 at 07:49:32AM -0700, Ulrich Drepper wrote:
> On Tue, Jun 2, 2009 at 7:18 AM, Chris Mason <> wrote:
> > I'm not suggesting we should take broken code, or that we should lower
> > standards just for xen.  But, expecting the xen developers to fix the 1%
> > hit on a very specific micro-benchmark is not a way to promote new
> > projects for the kernel, and it isn't a good way to convince people to
> > do continued development in mainline instead of in private trees.
> It's not a new project which needs to be treated with kid's gloves.

Sure, I'm not suggesting we send them flowers on mothers day or
anything, and I'm not suggesting they skip out on important cleanups.
But, I strongly object to a 1% hit on a random micro benchmark as a
reason to keep the code out.

> And one be sure that once the code is in the tree those interested
> parties will not be as strongly motivated to fix any problem like
> this.

The idea that people shipping xen aren't interested in performance
regressions is really strange to me.

> Ingo pointed to a way which doesn't negatively impact the
> performance of the Xen kernel and reduces the overhead (dynamic
> patching).  Just get started on this (and general cleanup) and this
> whole argument will go away.

Dynamic patching is a big wad of duct tape over the problem.

> I find it ridiculous to use the "but it's used" argument to try to
> force the code into the kernel.  By this argument you can say the same
> about crap like ndiswrapper and similarly harmful code.

I'm not saying to take harmful code, I'm saying to take code with a
small performance regression under a specific CONFIG_.  Slub regresses
more than 1% on database loads, CONFIG_SCHED_GROUPS, the list goes on
and on.

The idea that we should take code that is heavily used is important.
The best place to fix xen is in the kernel.  It always has been, and
keeping it out is just making it harder on everyone involved.


(Log in to post comments)

Copyright © 2009, Eklektix, Inc.
Comments and public postings are copyrighted by their creators.
Linux is a registered trademark of Linus Torvalds