From mboxrd@z Thu Jan 1 00:00:00 1970 From: Konrad Rzeszutek Wilk Subject: Re: Linux v3.12 + pv ticketlocks Date: Wed, 11 Sep 2013 15:24:07 -0400 Message-ID: <20130911192407.GA30412@phenom.dumpdata.com> References: <20130906201113.GA25693@phenom.dumpdata.com> <1464013377.20130911202501@eikelenboom.it> <20130911184129.GA30042@phenom.dumpdata.com> <208782456.20130911210505@eikelenboom.it> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Return-path: Content-Disposition: inline In-Reply-To: <208782456.20130911210505@eikelenboom.it> List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Sender: xen-devel-bounces@lists.xen.org Errors-To: xen-devel-bounces@lists.xen.org To: Sander Eikelenboom Cc: xen-devel@lists.xensource.com List-Id: xen-devel@lists.xenproject.org On Wed, Sep 11, 2013 at 09:05:05PM +0200, Sander Eikelenboom wrote: > > Wednesday, September 11, 2013, 8:41:29 PM, you wrote: > > > On Wed, Sep 11, 2013 at 08:25:01PM +0200, Sander Eikelenboom wrote: > >> Hi Konrad, > >> > >> Just to confirm: > >> > >> - PV ticketlocks is on by default and doesn't neet a config option, to disable it at boot time it's possible to use "xen_nopvspin" as a kernel commandline parameter > > > Yes. > >> - CONFIG_PARAVIRT_SPINLOCKS should be off, since that would enable the old bytelock pv-spinlock implementation which could now probably be removed ? > > > You still need CONFIG_PARAVIRT_SPINLOCKS=y to take advantage of it. > > > The bytelock pvspinlock is gone. If you compile without CONFIG_PARAVIRT_SPINLOCKS > > then you will only use ticketlocks for all types of guests and baremtal. No > > 'PV' variant. > > > The CONFIG_PARAVIRT_SPINLOCKS=y enables the PV ticketlock for all guests. > > Ok so the KConfig (help) entry for CONFIG_PARAVIRT_SPINLOCKS should perhaps also be updated ? Yes! > > Since it for example still contains the "Unfortunately the downside is an up to 5% > performance hit on native kernels, with various workloads." which afaik was one the things the PV ticketlock migitated, > so it would be more feasible for distributions to have this option on for all general distro kernels ? Yikes. That is true - needs to be updated as the results were the opposite: Results: ======= setup: 32 core machine with 32 vcpu KVM guest (HT off) with 8GB RAM base = 3.11-rc patched = base + pvspinlock V12 +-----------------+----------------+--------+ dbench (Throughput in MB/sec. Higher is better) +-----------------+----------------+--------+ | base (stdev %)|patched(stdev%) | %gain | +-----------------+----------------+--------+ | 15035.3 (0.3) |15150.0 (0.6) | 0.8 | | 1470.0 (2.2) | 1713.7 (1.9) | 16.6 | | 848.6 (4.3) | 967.8 (4.3) | 14.0 | | 652.9 (3.5) | 685.3 (3.7) | 5.0 | +-----------------+----------------+--------+ (I don't have the baremetal one - but it was pretty much 0%). Please if you get a chance - please do send a patch to x86 folks altering this. Thanks!