Messages in this thread | | | Date | Thu, 11 Jul 2013 15:40:38 +0530 | From | Raghavendra K T <> | Subject | Re: [PATCH RFC V9 0/19] Paravirtualized ticket spinlocks |
| |
On 07/11/2013 03:18 PM, Gleb Natapov wrote: > On Thu, Jul 11, 2013 at 02:43:03PM +0530, Raghavendra K T wrote: >> On 07/10/2013 04:03 PM, Gleb Natapov wrote: >> [...] trimmed >> >>>>> Yes. you are right. dynamic ple window was an attempt to solve it. >>>>> >>>>> Probelm is, reducing the SPIN_THRESHOLD is resulting in excess halt >>>>> exits in under-commits and increasing ple_window may be sometimes >>>>> counter productive as it affects other busy-wait constructs such as >>>>> flush_tlb AFAIK. >>>>> So if we could have had a dynamically changing SPIN_THRESHOLD too, that >>>>> would be nice. >>>>> >>>> >>>> Gleb, Andrew, >>>> I tested with the global ple window change (similar to what I posted >>>> here https://lkml.org/lkml/2012/11/11/14 ), >>> This does not look global. It changes PLE per vcpu. >> >> Okay. Got it. I was thinking it would change the global value. But IIRC >> It is changing global sysfs value and per vcpu ple_window. >> Sorry. I missed this part yesterday. >> > Yes, it changes sysfs value but this does not affect already created > vcpus. > >>> >>>> But did not see good result. May be it is good to go with per VM >>>> ple_window. >>>> >>>> Gleb, >>>> Can you elaborate little more on what you have in mind regarding per >>>> VM ple_window. (maintaining part of it as a per vm variable is clear >>>> to >>>> me), but is it that we have to load that every time of guest entry? >>>> >>> Only when it changes, shouldn't be to often no? >> >> Ok. Thinking how to do. read the register and writeback if there need >> to be a change during guest entry? >> > Why not do it like in the patch you've linked? When value changes write it > to VMCS of the current vcpu. >
Yes. can be done. So the running vcpu's ple_window gets updated only after next pl-exit. right?
| |