From mboxrd@z Thu Jan 1 00:00:00 1970 From: Paolo Bonzini Subject: Re: A question about HTL VM-Exit handling time Date: Tue, 21 Oct 2014 20:39:49 +0200 Message-ID: <5446A875.4080204@redhat.com> References: Mime-Version: 1.0 Content-Type: text/plain; charset=windows-1252 Content-Transfer-Encoding: 8bit Cc: Xiao Guangrong To: "Wu, Feng" , "kvm@vger.kernel.org" Return-path: Received: from mail-wg0-f49.google.com ([74.125.82.49]:38349 "EHLO mail-wg0-f49.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1754405AbaJUSj4 (ORCPT ); Tue, 21 Oct 2014 14:39:56 -0400 Received: by mail-wg0-f49.google.com with SMTP id x12so2124402wgg.32 for ; Tue, 21 Oct 2014 11:39:55 -0700 (PDT) In-Reply-To: Sender: kvm-owner@vger.kernel.org List-ID: On 10/16/2014 10:15 AM, Wu, Feng wrote: > Hi folks, > > I run kernel build in the guest and use perf kvm to get some VM-Exit result as the following: > > Analyze events for all VCPUs: > > VM-EXIT Samples Samples% Time% Min Time Max Time A > > MSR_WRITE 3613908 57.53% 18.97% 5us 1362us 9.73 > HLT 1399747 22.28% 74.90% 5us 432448us 99.24 > CR_ACCESS 961203 15.30% 3.28% 4us 188us 6.33 > EXTERNAL_INTERRUPT 213821 3.40% 2.25% 4us 4089us 19.54 > EXCEPTION_NMI 25152 0.40% 0.12% 4us 71us 9.05 > EPT_MISCONFIG 20104 0.32% 0.15% 8us 5628us 13.74 > CPUID 19904 0.32% 0.07% 4us 220us 6.90 > IO_INSTRUCTION 17097 0.27% 0.20% 13us 1008us 22.08 > PAUSE_INSTRUCTION 10737 0.17% 0.05% 4us 53us 8.33 > MSR_READ 48 0.00% 0.00% 4us 8us 5.62 > > Total Samples:6281721, Total events handled time:185457820.41us. > > I also do some other experiments with different workload in the guest, I got the same results in terms of > HLT VM-Exit handling time. Does anyone know why the handling time for HLT VM-Exit is so high? Appreciate > You help! 432 ms sounds like a lot, but in general it is expected that HLT vmexits take a long time. After an HLT vmexit, the VCPU will not be reentered until the next interrupt comes. On hardware, the HLT instruction can also take many milliseconds. If this is an SMP guest, it's possible that the maximum time is registered on the APs before Linux boots. With a UP guest I would expect a shorter maximum time, but still longer than other vmexits. Paolo