From mboxrd@z Thu Jan 1 00:00:00 1970 From: Juergen Gross Subject: Re: Performance difference between Xen versions Date: Mon, 02 May 2011 07:31:53 +0200 Message-ID: <4DBE41C9.1010409@ts.fujitsu.com> References: <4DBAAFF1.8080001@ts.fujitsu.com> <4DBAFF01020000780003EEFD@vpn.id2.novell.com> Mime-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Return-path: In-Reply-To: <4DBAFF01020000780003EEFD@vpn.id2.novell.com> List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Sender: xen-devel-bounces@lists.xensource.com Errors-To: xen-devel-bounces@lists.xensource.com To: Jan Beulich Cc: "xen-devel@lists.xensource.com" List-Id: xen-devel@lists.xenproject.org On 04/29/11 18:10, Jan Beulich wrote: >>>> On 29.04.11 at 14:32, Juergen Gross wrote: >> Hi, >> >> comparing performance of different Xen versions with BS2000 as HVM guest >> showed some weird data I'd like to understand. >> >> All measurements were done on an Intel Xeon E7220 box. We used a disk- >> benchmark and found the cpu utilization was much higher with Xen 4.0 >> compared >> to Xen 3.3. I did some more investigation and narrowed things down to calls >> of >> the hypervisor (implicit or explicit). >> >> Following is a table with timing data for different low-level functions, all >> timing values are tsc ticks obtained via rdtsc: >> >> Xen 3.3 Xen 4.0 Function >> 88 165 just the measurement overhead >> 176 330 rdtsc-instruction + cli/sti >> 5896 11044 lapic timer query >> 7381 13519 setting lapic timer >> 4653 8987 reload of cr3 >> 3124 5709 invlpg instruction >> 792253 792264 wbinvd instruction >> 748 1375 int + iret >> 5203 9317 hypervisor yield call >> 12598102 12597882 memory access loop >> >> All operations involving the hypervisor take nearly twice the time on 4.0. >> Operations not involving the hypervisor (wbinvd and memory access loop) are >> the same on both systems (this rules out the possibility of different rdtsc >> behavior). >> >> Is there any easy explanation for this? Both Xen versions are from SLES >> (SLES11 or SLES11 SP1). > I think cpufreq handling was off by default in 3.3, and is on by > default on 4.0. Try turning this off, or using the performance > governor. Jan, you got it! With cpufreq=none Xen 4.0 has more or less the same numbers as 3.3. Now I wonder why the default is so much slower. I looks as if the hypervisor would run at a lower speed. I can't believe it should behave like that! Juergen -- Juergen Gross Principal Developer Operating Systems TSP ES&S SWE OS6 Telephone: +49 (0) 89 3222 2967 Fujitsu Technology Solutions e-mail: juergen.gross@ts.fujitsu.com Domagkstr. 28 Internet: ts.fujitsu.com D-80807 Muenchen Company details: ts.fujitsu.com/imprint.html