All of lore.kernel.org
 help / color / mirror / Atom feed
* domU using linux-2.6.37-xen-next pvops kernel with CONFIG_PARAVIRT_SPINLOCKS disabled results in 150% performance improvement (updated)
@ 2010-12-21  1:03 Dante Cinco
  2010-12-21 16:22 ` Konrad Rzeszutek Wilk
  2010-12-21 17:39 ` Jeremy Fitzhardinge
  0 siblings, 2 replies; 5+ messages in thread
From: Dante Cinco @ 2010-12-21  1:03 UTC (permalink / raw)
  To: Xen-devel, Konrad Rzeszutek Wilk, Jeremy Fitzhardinge


[-- Attachment #1.1: Type: text/plain, Size: 2303 bytes --]

(Sorry, I accidentally sent the previous post before finishing the summary
table)

For a couple of months now, we've been trying to track down the slow I/O
performance in pvops domU. Our system has 16 Fibre Channel devices, all
PCI-passthrough to domU. We were previously using a 2.6.32 (Ubuntu version)
HVM kernel and were getting 511k IOPS. We switched to pvops with Konrad's
xen-pcifront-0.8.2 kernel and were disappointed to see the performance
degrade to 11k IOPS. After disabling some kernel debug options including
KMEMLEAK, the performance jumped to 186k IOPS but still well below what we
were getting with the HVM kernel. We tried disabling spinlock debugging in
the kernel but it actually resulted in a drop in performance to 70k IOPS.

Last week we switched to linux-2.6.37-xen-next and with the same kernel
debug options disabled, the I/O performance was slightly better at 211k
IOPS. We tried disabling spinlock debugging again and saw a similar drop in
performance to 58k IOPS. We searched around for any performance-related
posts regarding pvops and found two references to CONFIG_PARAVIRT_SPINLOCKS
(one from Jeremy and one from Konrad):
http://lists.xensource.com/archives/html/xen-devel/2009-05/msg00660.html
http://lists.xensource.com/archives/html/xen-devel/2010-11/msg01111.html

Both posts recommended (Konrad strongly) enabling PARAVIRT_SPINLOCKS when
running under Xen. Since it's enabled by default, we decided to see what
would happen if we disabled CONFIG_PARAVIRT_SPINLOCKS. With the spinlock
debugging enabled, we were getting 205k IOPS but with spinlock debugging
disabled, the performance leaped to 522k IOPS !!!

I'm assuming that this behavior is unexpected.

Here's a summary of the kernels, config changes and performance (in IOPS):

                      pcifront   linux
                      0.8.2      2.6.37-xen-next
                      pvops      pvops
Spinlock
debugging enabled,     186k       205k
PARAVIRT_SPINLOCKS=y

Spinlock
debugging disabled,     70k        58k
PARAVIRT_SPINLOCKS=y

Spinlock
debugging disabled,    247k       522k
PARAVIRT_SPINLOCKS=n


system: HP Proliant DL380G7
Xen: 4.1-unstable (Thu Oct 14 12:46:29 2010 +0100 22241:3a5755249361)
dom0: 2.6.32.24-pvops-stable (xen/stable)
domU: linux-2.6.37-xen-next (2.6.37-rc5-pvops)

- Dante

[-- Attachment #1.2: Type: text/html, Size: 3785 bytes --]

[-- Attachment #2: Type: text/plain, Size: 138 bytes --]

_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xensource.com
http://lists.xensource.com/xen-devel

^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2010-12-21 19:03 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2010-12-21  1:03 domU using linux-2.6.37-xen-next pvops kernel with CONFIG_PARAVIRT_SPINLOCKS disabled results in 150% performance improvement (updated) Dante Cinco
2010-12-21 16:22 ` Konrad Rzeszutek Wilk
2010-12-21 18:01   ` Dante Cinco
2010-12-21 17:39 ` Jeremy Fitzhardinge
2010-12-21 19:03   ` Lin, Ray

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.