Waiman Long
2014-Apr-07 16:38 UTC
[PATCH v8 00/10] qspinlock: a 4-byte queue spinlock with PV support
On 04/07/2014 02:14 AM, Raghavendra K T wrote:> > > I tested the v7,v8 of qspinlock with unfair config on kvm guest. > I was curious about unfair locks performance in undercommit cases. > (overcommit case is expected to perform well) > > But I am seeing hang in overcommit cases. Gdb showed that many vcpus > are halted and there was no progress. Suspecting the problem /race with > halting, I removed the halt() part of kvm_hibernate(). I am yet to > take a closer look at the code on halt() related changes.It seems like there may still be race conditions where the current code is not handling correctly. I will look into that to see where the problem is. BTW, what test do you use to produce the hang condition?> > Patch series with that change gave around 20% improvement for dbench > 2x and 30% improvement for ebizzy 2x cases. (1x has no significant > loss/gain). > >What is the baseline for the performance improvement? Is it without the unfair lock and PV qspinlock? -Longman
Raghavendra K T
2014-Apr-07 17:51 UTC
[PATCH v8 00/10] qspinlock: a 4-byte queue spinlock with PV support
On 04/07/2014 10:08 PM, Waiman Long wrote:> On 04/07/2014 02:14 AM, Raghavendra K T wrote:[...]>> But I am seeing hang in overcommit cases. Gdb showed that many vcpus >> are halted and there was no progress. Suspecting the problem /race with >> halting, I removed the halt() part of kvm_hibernate(). I am yet to >> take a closer look at the code on halt() related changes. > > It seems like there may still be race conditions where the current code > is not handling correctly. I will look into that to see where the > problem is. BTW, what test do you use to produce the hang condition?Running ebizzy on 2 of the vms simultaneously (for sometime in repeated loop) could reproduce it.>> Patch series with that change gave around 20% improvement for dbench >> 2x and 30% improvement for ebizzy 2x cases. (1x has no significant >> loss/gain). >>While at it, Just a correction it was 30% for ebizzy1.5x and around 80% for ebizzy 2x.> What is the baseline for the performance improvement? Is it without the > unfair lock and PV qspinlock?Baseline was 3.14-rc8 without any of the qspin patch series.
Waiman Long
2014-Apr-08 19:15 UTC
[PATCH v8 00/10] qspinlock: a 4-byte queue spinlock with PV support
On 04/07/2014 01:51 PM, Raghavendra K T wrote:> On 04/07/2014 10:08 PM, Waiman Long wrote: >> On 04/07/2014 02:14 AM, Raghavendra K T wrote: > [...] >>> But I am seeing hang in overcommit cases. Gdb showed that many vcpus >>> are halted and there was no progress. Suspecting the problem /race with >>> halting, I removed the halt() part of kvm_hibernate(). I am yet to >>> take a closer look at the code on halt() related changes. >> >> It seems like there may still be race conditions where the current code >> is not handling correctly. I will look into that to see where the >> problem is. BTW, what test do you use to produce the hang condition? > > Running ebizzy on 2 of the vms simultaneously (for sometime in > repeated loop) could reproduce it. >Yes, I am able to reproduce the hang problem with ebizzy. BTW, could you try to apply the attached patch file on top of the v8 patch series to see if it can fix the hang problem?> >> What is the baseline for the performance improvement? Is it without the >> unfair lock and PV qspinlock? > > Baseline was 3.14-rc8 without any of the qspin patch series. >Does the baseline have PV ticketlock or without any PV support? -Longman -------------- next part -------------- An embedded and charset-unspecified text was scrubbed... Name: 0011 URL: <http://lists.linuxfoundation.org/pipermail/virtualization/attachments/20140408/66cb7116/attachment.ksh>
Apparently Analagous Threads
- [PATCH v8 00/10] qspinlock: a 4-byte queue spinlock with PV support
- [PATCH v8 00/10] qspinlock: a 4-byte queue spinlock with PV support
- [PATCH v8 00/10] qspinlock: a 4-byte queue spinlock with PV support
- [PATCH v8 00/10] qspinlock: a 4-byte queue spinlock with PV support
- [PATCH v10 18/19] pvqspinlock, x86: Enable PV qspinlock PV for KVM