xen-devel.lists.xenproject.org archive mirror
 help / color / mirror / Atom feed
From: Keir Fraser <keir.xen@gmail.com>
To: Juergen Gross <juergen.gross@ts.fujitsu.com>
Cc: "xen-devel@lists.xensource.com" <xen-devel@lists.xensource.com>
Subject: Re: Performance difference between Xen versions
Date: Fri, 29 Apr 2011 15:58:55 +0100	[thread overview]
Message-ID: <C9E090BF.16FC4%keir.xen@gmail.com> (raw)
In-Reply-To: <4DBABEAB.6090906@ts.fujitsu.com>

On 29/04/2011 14:35, "Juergen Gross" <juergen.gross@ts.fujitsu.com> wrote:

> On 04/29/11 15:28, Keir Fraser wrote:
>> Are you sure TSC runs at the same rate in the guest on both hypervisor
>> versions? Xen 4.0 might trap and emulate a more consistent but slower rate
>> TSC by default. 'tsc_mode=2' in your domain config file on 4.0 might be a
>> quick fix.
> Already done :-), so yes, I am sure the tsc rate is the same. The debug key
> 's' (softTSC stats) shows that no tsc is emulated.
> 
> BTW: different tsc rate is improbable as the memory access loop shows
> nearly the same tsc difference...

Then I'm not sure. Maybe something got added to the VMEXIT/VMENTRY path that
is unexpectedly slow. You'll have to do a bit of digging.

 -- Keir

> Juergen
> 
>>   -- Keir
>> 
>> On 29/04/2011 13:32, "Juergen Gross"<juergen.gross@ts.fujitsu.com>  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).
>>> 
>>> 
>>> Juergen

  reply	other threads:[~2011-04-29 14:58 UTC|newest]

Thread overview: 28+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2011-04-29 12:32 Performance difference between Xen versions Juergen Gross
2011-04-29 13:28 ` Keir Fraser
2011-04-29 13:35   ` Juergen Gross
2011-04-29 14:58     ` Keir Fraser [this message]
2011-04-29 16:10 ` Jan Beulich
2011-05-02  5:31   ` Juergen Gross
2011-05-02  6:41     ` Keir Fraser
2011-05-02  7:23       ` Jan Beulich
2011-05-02  8:00         ` Juergen Gross
2011-05-02  8:15           ` Jan Beulich
2011-05-02  8:23             ` Juergen Gross
2011-05-02  8:49               ` Keir Fraser
2011-05-03  3:06                 ` Tian, Kevin
2011-05-06 13:49                   ` Juergen Gross
2011-05-06 14:27                     ` Jan Beulich
2011-05-11  6:08                     ` Tian, Kevin
2011-05-11  6:23                       ` Juergen Gross
2011-05-02 17:52         ` John Weekes
2011-05-02 18:12           ` Konrad Rzeszutek Wilk
2011-05-02 18:43             ` John Weekes
2011-05-02 19:16               ` John Weekes
2011-05-02 19:36                 ` Konrad Rzeszutek Wilk
2011-05-02 19:54                   ` John Weekes
2011-05-03  2:16                   ` Tian, Kevin
2011-05-03  3:04                 ` Tian, Kevin
2011-05-03  3:39                   ` John Weekes
2011-05-03  7:23                     ` Tian, Kevin
     [not found]         ` <4DBF13BB.3000309@nuclearfallout.net>
2011-05-03  7:23           ` Jan Beulich

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=C9E090BF.16FC4%keir.xen@gmail.com \
    --to=keir.xen@gmail.com \
    --cc=juergen.gross@ts.fujitsu.com \
    --cc=xen-devel@lists.xensource.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).