All of lore.kernel.org
 help / color / mirror / Atom feed
From: Raghavendra K T <raghavendra.kt@linux.vnet.ibm.com>
To: Andrew Jones <drjones@redhat.com>, gleb@redhat.com
Cc: mingo@redhat.com, jeremy@goop.org, x86@kernel.org,
	konrad.wilk@oracle.com, hpa@zytor.com, pbonzini@redhat.com,
	linux-doc@vger.kernel.org, habanero@linux.vnet.ibm.com,
	xen-devel@lists.xensource.com, peterz@infradead.org,
	mtosatti@redhat.com, stefano.stabellini@eu.citrix.com,
	andi@firstfloor.org, attilio.rao@citrix.com, ouyang@cs.pitt.edu,
	gregkh@suse.de, agraf@suse.de, chegu_vinod@hp.com,
	torvalds@linux-foundation.org, avi.kivity@gmail.com,
	tglx@linutronix.de, kvm@vger.kernel.org,
	linux-kernel@vger.kernel.org, stephan.diestelhorst@amd.com,
	riel@redhat.com, virtualization@lists.linux-foundation.org,
	srivatsa.vaddagiri@gmail.com
Subject: Re: [PATCH RFC V10 0/18] Paravirtualized ticket spinlocks
Date: Thu, 27 Jun 2013 17:17:29 +0530	[thread overview]
Message-ID: <51CC2651.507@linux.vnet.ibm.com> (raw)
In-Reply-To: <51CAA764.7000006@linux.vnet.ibm.com>

On 06/26/2013 02:03 PM, Raghavendra K T wrote:
> On 06/24/2013 06:47 PM, Andrew Jones wrote:
>> On Mon, Jun 24, 2013 at 06:10:14PM +0530, Raghavendra K T wrote:
>>>
>>> Results:
>>> =======
>>> base = 3.10-rc2 kernel
>>> patched = base + this series
>>>
>>> The test was on 32 core (model: Intel(R) Xeon(R) CPU X7560) HT disabled
>>> with 32 KVM guest vcpu 8GB RAM.
>>
>> Have you ever tried to get results with HT enabled?
>>
>>>
>>> +-----------+-----------+-----------+------------+-----------+
>>>                 ebizzy (records/sec) higher is better
>>> +-----------+-----------+-----------+------------+-----------+
>>>      base        stdev        patched    stdev        %improvement
>>> +-----------+-----------+-----------+------------+-----------+
>>> 1x  5574.9000   237.4997    5618.0000    94.0366     0.77311
>>> 2x  2741.5000   561.3090    3332.0000   102.4738    21.53930
>>> 3x  2146.2500   216.7718    2302.3333    76.3870     7.27237
>>> 4x  1663.0000   141.9235    1753.7500    83.5220     5.45701
>>> +-----------+-----------+-----------+------------+-----------+
>>
>> This looks good. Are your ebizzy results consistent run to run
>> though?
>>
>>> +-----------+-----------+-----------+------------+-----------+
>>>                dbench  (Throughput) higher is better
>>> +-----------+-----------+-----------+------------+-----------+
>>>      base        stdev        patched    stdev        %improvement
>>> +-----------+-----------+-----------+------------+-----------+
>>> 1x 14111.5600   754.4525   14645.9900   114.3087     3.78718
>>> 2x  2481.6270    71.2665    2667.1280    73.8193     7.47498
>>> 3x  1510.2483    31.8634    1503.8792    36.0777    -0.42173
>>> 4x  1029.4875    16.9166    1039.7069    43.8840     0.99267
>>> +-----------+-----------+-----------+------------+-----------+
>>
>> Hmm, I wonder what 2.5x looks like. Also, the 3% improvement with
>> no overcommit is interesting. What's happening there? It makes
>> me wonder what < 1x looks like.
>>
>
> Hi Andrew,
>
> I tried 2.5x case sort where I used 3 guests with 27 vcpu each on 32
> core (HT disabled machine) and here is the output. almost no gain there.
>
>               throughput avg    stdev
> base:     1768.7458 MB/sec     54.044221
> patched:  1772.5617 MB/sec     41.227689
> gain %0.226
>
> I am yet to try HT enabled cases that would give 0.5x to 2x performance
> results.
>

I have the result of HT enabled case now.
config: total 64 cpu (HT on) 32 vcpu guests.
I am seeing some inconsistency in ebizzy results in this case (May be 
Drew had tried with HT on and had observed the same in ebizzy runs).

patched-nonple and  base  performance in case of 1.5x and 2x also have 
been little inconsistent for dbench too. Overall I see pvspinlock + ple 
on case more stable.
and overall pvspinlock performance seem to be very impressive in HT 
enabled case.

patched = pvspinv10_hton
+-----------+-----------+-----------+------------+-----------+
                               ebizzy
+----+----------+-----------+-----------+------------+-----------+
         base        stdev       patched   stdev        %improvement
+----+---------+-----------+-----------+------------+-----------+
  0.5x  6925.3000    74.4342	  7317.0000    86.3018	   5.65607
  1.0x  2379.8000   405.3519	  3427.0000   574.8789	  44.00370
  1.5x  1850.8333    97.8114	  2733.4167   459.8016	  47.68573
  2.0x  1477.6250   105.2411	  2525.2500    97.5921	  70.89925
+-----------+-----------+-----------+------------+-----------+
+-----------+-----------+-----------+------------+-----------+
                               dbench
+----+----------+-----------+-----------+------------+-----------+
         base        stdev       patched   stdev        %improvement
+----+---------+-----------+-----------+------------+-----------+
  0.5x 9045.9950   463.1447	 16482.7200    57.6017	  82.21014
  1.0x 6251.1680   543.8219	 11212.7600   380.7542	  79.37064
  1.5x 3095.7475   231.1567	  4308.8583   266.5873	  39.18636
  2.0x 1219.1200    75.4294	  1979.6750   134.6934	  62.38557
+-----------+-----------+-----------+------------+-----------+

patched = pvspinv10_hton_nople
+-----------+-----------+-----------+------------+-----------+
                               ebizzy
+----+----------+-----------+-----------+------------+-----------+
         base        stdev       patched   stdev        %improvement
+----+---------+-----------+-----------+------------+-----------+
  0.5x 6925.3000    74.4342	  7473.8000   224.6344	   7.92023
  1.0x 2379.8000   405.3519	  6176.2000   417.1133	 159.52601
  1.5x 1850.8333    97.8114	  2214.1667   515.6875	  19.63080
  2.0x 1477.6250   105.2411	   758.0000   108.8131	 -48.70146
+-----------+-----------+-----------+------------+-----------+
+-----------+-----------+-----------+------------+-----------+
                               dbench
+----+----------+-----------+-----------+------------+-----------+
         base        stdev       patched   stdev        %improvement
+----+---------+-----------+-----------+------------+-----------+
  0.5x 9045.9950   463.1447	 15195.5000   711.8794	  67.98042
  1.0x 6251.1680   543.8219	 11327.8800   404.7115	  81.21222
  1.5x 3095.7475   231.1567	  4960.2722  3822.6534	  60.22858
  2.0x 1219.1200    75.4294	  1982.2828  1016.4083	  62.59948
+----+-----------+-----------+-----------+------------+-----------+

  parent reply	other threads:[~2013-06-27 11:47 UTC|newest]

Thread overview: 126+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-06-24 12:40 [PATCH RFC V10 0/18] Paravirtualized ticket spinlocks Raghavendra K T
2013-06-24 12:40 ` Raghavendra K T
2013-06-24 12:40 ` [PATCH RFC V10 1/18] x86/spinlock: Replace pv spinlocks with pv ticketlocks Raghavendra K T
2013-06-24 12:40   ` Raghavendra K T
2013-06-24 12:40   ` Raghavendra K T
2013-06-24 12:40 ` [PATCH RFC V10 2/18] x86/ticketlock: Don't inline _spin_unlock when using paravirt spinlocks Raghavendra K T
2013-06-24 12:40   ` Raghavendra K T
2013-06-24 12:40   ` Raghavendra K T
2013-06-24 12:41 ` [PATCH RFC V10 3/18] x86/ticketlock: Collapse a layer of functions Raghavendra K T
2013-06-24 12:41   ` Raghavendra K T
2013-06-24 12:41   ` Raghavendra K T
2013-06-24 12:41 ` [PATCH RFC V10 4/18] xen: Defer spinlock setup until boot CPU setup Raghavendra K T
2013-06-24 12:41   ` Raghavendra K T
2013-06-24 12:41   ` Raghavendra K T
2013-06-24 12:41 ` [PATCH RFC V10 5/18] xen/pvticketlock: Xen implementation for PV ticket locks Raghavendra K T
2013-06-24 12:41   ` Raghavendra K T
2013-06-24 12:41   ` Raghavendra K T
2013-06-24 12:41 ` [PATCH RFC V10 6/18] xen/pvticketlocks: Add xen_nopvspin parameter to disable xen pv ticketlocks Raghavendra K T
2013-06-24 12:41   ` Raghavendra K T
2013-06-24 12:41   ` Raghavendra K T
2013-06-24 12:42 ` [PATCH RFC V10 7/18] x86/pvticketlock: Use callee-save for lock_spinning Raghavendra K T
2013-06-24 12:42   ` Raghavendra K T
2013-06-24 12:42   ` Raghavendra K T
2013-06-24 12:42 ` [PATCH RFC V10 8/18] x86/pvticketlock: When paravirtualizing ticket locks, increment by 2 Raghavendra K T
2013-06-24 12:42   ` Raghavendra K T
2013-06-24 12:42   ` Raghavendra K T
2013-06-24 12:42 ` [PATCH RFC V10 9/18] jump_label: Split out rate limiting from jump_label.h Raghavendra K T
2013-06-24 12:42   ` Raghavendra K T
2013-06-24 12:42   ` Raghavendra K T
2013-06-24 12:42 ` [PATCH RFC V10 10/18] x86/ticketlock: Add slowpath logic Raghavendra K T
2013-06-24 12:42   ` Raghavendra K T
2013-06-24 12:42   ` Raghavendra K T
2013-06-24 12:42 ` [PATCH RFC V10 11/18] xen/pvticketlock: Allow interrupts to be enabled while blocking Raghavendra K T
2013-06-24 12:42 ` Raghavendra K T
2013-06-24 12:42   ` Raghavendra K T
2013-06-24 12:43 ` [PATCH RFC V10 12/18] kvm hypervisor : Add a hypercall to KVM hypervisor to support pv-ticketlocks Raghavendra K T
2013-06-24 12:43   ` Raghavendra K T
2013-06-24 12:43   ` Raghavendra K T
2013-07-14 13:48   ` Gleb Natapov
2013-07-14 13:48     ` Gleb Natapov
2013-07-15  5:53     ` Raghavendra K T
2013-07-15  5:53       ` Raghavendra K T
2013-06-24 12:43 ` [PATCH RFC V10 13/18] kvm : Fold pv_unhalt flag into GET_MP_STATE ioctl to aid migration Raghavendra K T
2013-06-24 12:43   ` Raghavendra K T
2013-06-24 12:43   ` Raghavendra K T
2013-06-24 12:43 ` [PATCH RFC V10 14/18] kvm guest : Add configuration support to enable debug information for KVM Guests Raghavendra K T
2013-06-24 12:43   ` Raghavendra K T
2013-06-24 12:43   ` Raghavendra K T
2013-06-24 12:43 ` [PATCH RFC V10 15/18] kvm : Paravirtual ticketlocks support for linux guests running on KVM hypervisor Raghavendra K T
2013-06-24 12:43   ` Raghavendra K T
2013-06-24 12:43   ` Raghavendra K T
2013-07-14 13:12   ` Gleb Natapov
2013-07-14 13:12     ` Gleb Natapov
2013-07-15  9:50     ` Raghavendra K T
2013-07-15  9:50       ` Raghavendra K T
2013-07-15 10:36       ` Gleb Natapov
2013-07-15 10:36         ` Gleb Natapov
2013-07-16  3:37         ` Raghavendra K T
2013-07-16  3:37         ` Raghavendra K T
2013-07-16  6:02           ` Gleb Natapov
2013-07-16  6:02             ` Gleb Natapov
2013-07-16 15:48             ` Peter Zijlstra
2013-07-16 15:48               ` Peter Zijlstra
2013-07-16 16:31               ` Gleb Natapov
2013-07-16 16:31                 ` Gleb Natapov
2013-07-16 18:49               ` Raghavendra K T
2013-07-16 18:49                 ` Raghavendra K T
2013-07-16 18:42             ` Raghavendra K T
2013-07-16 18:42             ` Raghavendra K T
2013-07-17  9:34               ` Gleb Natapov
2013-07-17  9:34                 ` Gleb Natapov
2013-07-17 10:05                 ` Raghavendra K T
2013-07-17 10:05                   ` Raghavendra K T
2013-07-17 10:38                   ` Raghavendra K T
2013-07-17 10:38                   ` Raghavendra K T
2013-07-17 12:45                   ` Gleb Natapov
2013-07-17 12:45                     ` Gleb Natapov
2013-07-17 12:55                     ` Raghavendra K T
2013-07-17 12:55                       ` Raghavendra K T
2013-07-17 13:25                       ` Gleb Natapov
2013-07-17 13:25                         ` Gleb Natapov
2013-07-17 14:13                         ` Raghavendra K T
2013-07-17 14:13                           ` Raghavendra K T
2013-07-17 14:14                           ` Raghavendra K T
2013-07-17 14:14                             ` Raghavendra K T
2013-07-17 14:14                           ` Raghavendra K T
2013-07-17 14:44                           ` Gleb Natapov
2013-07-17 14:44                             ` Gleb Natapov
2013-07-17 14:55                             ` Raghavendra K T
2013-07-17 14:55                               ` Raghavendra K T
2013-07-17 15:11                               ` Gleb Natapov
2013-07-17 15:11                                 ` Gleb Natapov
2013-07-17 15:22                                 ` Raghavendra K T
2013-07-17 15:22                                 ` Raghavendra K T
2013-07-17 15:20                               ` Raghavendra K T
2013-07-17 15:20                                 ` Raghavendra K T
2013-06-24 12:43 ` [PATCH RFC V10 16/18] kvm hypervisor : Simplify kvm_for_each_vcpu with kvm_irq_delivery_to_apic Raghavendra K T
2013-06-24 12:43   ` Raghavendra K T
2013-06-24 12:43   ` Raghavendra K T
2013-07-14 13:24   ` Gleb Natapov
2013-07-14 13:24     ` Gleb Natapov
2013-07-15 15:36     ` Raghavendra K T
2013-07-15 15:36       ` Raghavendra K T
2013-07-15 15:46       ` Gleb Natapov
2013-07-15 15:46         ` Gleb Natapov
2013-07-16 18:19         ` Raghavendra K T
2013-07-16 18:19         ` Raghavendra K T
2013-06-24 12:44 ` [PATCH RFC V10 17/18] Documentation/kvm : Add documentation on Hypercalls and features used for PV spinlock Raghavendra K T
2013-06-24 12:44   ` Raghavendra K T
2013-06-24 12:44   ` Raghavendra K T
2013-06-24 12:44 ` [PATCH RFC V10 18/18] kvm hypervisor: Add directed yield in vcpu block path Raghavendra K T
2013-06-24 12:44   ` Raghavendra K T
2013-06-24 12:44   ` Raghavendra K T
2013-07-14 14:18   ` Gleb Natapov
2013-07-14 14:18     ` Gleb Natapov
2013-07-15  6:04     ` Raghavendra K T
2013-07-15  6:04       ` Raghavendra K T
2013-06-24 13:17 ` [PATCH RFC V10 0/18] Paravirtualized ticket spinlocks Andrew Jones
2013-06-24 13:17   ` Andrew Jones
2013-06-24 13:49   ` Raghavendra K T
2013-06-24 13:49   ` Raghavendra K T
2013-06-26  8:33   ` Raghavendra K T
2013-06-26  8:33     ` Raghavendra K T
2013-06-27 11:47     ` Raghavendra K T
2013-06-27 11:47     ` Raghavendra K T [this message]
  -- strict thread matches above, loose matches on Subject: below --
2013-06-24 12:40 Raghavendra K T

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=51CC2651.507@linux.vnet.ibm.com \
    --to=raghavendra.kt@linux.vnet.ibm.com \
    --cc=agraf@suse.de \
    --cc=andi@firstfloor.org \
    --cc=attilio.rao@citrix.com \
    --cc=avi.kivity@gmail.com \
    --cc=chegu_vinod@hp.com \
    --cc=drjones@redhat.com \
    --cc=gleb@redhat.com \
    --cc=gregkh@suse.de \
    --cc=habanero@linux.vnet.ibm.com \
    --cc=hpa@zytor.com \
    --cc=jeremy@goop.org \
    --cc=konrad.wilk@oracle.com \
    --cc=kvm@vger.kernel.org \
    --cc=linux-doc@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=mingo@redhat.com \
    --cc=mtosatti@redhat.com \
    --cc=ouyang@cs.pitt.edu \
    --cc=pbonzini@redhat.com \
    --cc=peterz@infradead.org \
    --cc=riel@redhat.com \
    --cc=srivatsa.vaddagiri@gmail.com \
    --cc=stefano.stabellini@eu.citrix.com \
    --cc=stephan.diestelhorst@amd.com \
    --cc=tglx@linutronix.de \
    --cc=torvalds@linux-foundation.org \
    --cc=virtualization@lists.linux-foundation.org \
    --cc=x86@kernel.org \
    --cc=xen-devel@lists.xensource.com \
    /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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.