From mboxrd@z Thu Jan 1 00:00:00 1970 From: Avi Kivity Subject: Re: [PATCH RFC 0/2] kvm: Improving directed yield in PLE handler Date: Thu, 12 Jul 2012 11:15:03 +0300 Message-ID: <4FFE8787.2020806@redhat.com> References: <20120709062012.24030.37154.sendpatchset@codeblue> <1341870457.2909.27.camel@oc2024037011.ibm.com> <4FFD4091.8040804@redhat.com> <4FFD86CE.9040501@linux.vnet.ibm.com> <4FFD874B.4090606@linux.vnet.ibm.com> Mime-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit Return-path: In-Reply-To: <4FFD874B.4090606@linux.vnet.ibm.com> Sender: linux-kernel-owner@vger.kernel.org List-Archive: List-Post: To: Raghavendra K T Cc: habanero@linux.vnet.ibm.com, "H. Peter Anvin" , Thomas Gleixner , Marcelo Tosatti , Ingo Molnar , Rik van Riel , S390 , Carsten Otte , Christian Borntraeger , KVM , chegu vinod , LKML , X86 , Gleb Natapov , linux390@de.ibm.com, Srivatsa Vaddagiri , Joerg Roedel List-ID: On 07/11/2012 05:01 PM, Raghavendra K T wrote: > On 07/11/2012 07:29 PM, Raghavendra K T wrote: >> On 07/11/2012 02:30 PM, Avi Kivity wrote: >>> On 07/10/2012 12:47 AM, Andrew Theurer wrote: >>>> >>>> For the cpu threads in the host that are actually active (in this case >>>> 1/2 of them), ~50% of their time is in kernel and ~43% in guest. This >>>> is for a no-IO workload, so that's just incredible to see so much cpu >>>> wasted. I feel that 2 important areas to tackle are a more scalable >>>> yield_to() and reducing the number of pause exits itself (hopefully by >>>> just tuning ple_window for the latter). >>> >>> One thing we can do is autotune ple_window. If a ple exit fails to wake >>> anybody (because all vcpus are either running, sleeping, or in ple >>> exits) then we deduce we are not overcommitted and we can increase the >>> ple window. There's the question of how to decrease it again though. >>> >> >> I see some problem here, If I interpret situation correctly. What >> happens if we have two guests with one VM having no over-commit and >> other with high over-commit. (except when we have gang scheduling). >> > Sorry, I meant less load and high load inside the guest. > >> Rather we should have something tied to VM rather than rigid PLE >> window. The problem occurs even with no overcommit at all. One vcpu is in a legitimately long pause loop. All those exits accomplish nothing, since all vcpus are scheduled. Better to let it spin in guest mode. -- error compiling committee.c: too many arguments to function