From: Gordan Bobic <gordan@bobich.net>
To: Dario Faggioli <dario.faggioli@citrix.com>
Cc: Lars Kurth <lars.kurth@citrix.com>,
George Dunlap <george.dunlap@eu.citrix.com>,
George Dunlap <george.dunlap@citrix.com>,
Ross Lagerwall <ross.lagerwall@citrix.com>,
"stefano.stabellini@citrix.com" <stefano.stabellini@citrix.com>,
"xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>
Subject: Re: Virt overehead with HT [was: Re: Xen 4.5 development update]
Date: Mon, 28 Jul 2014 14:28:11 +0100 [thread overview]
Message-ID: <53D64FEB.1030300@bobich.net> (raw)
In-Reply-To: <1405391436.5333.33.camel@Solace>
On 07/15/2014 03:30 AM, Dario Faggioli wrote:
> On mar, 2014-07-15 at 01:10 +0100, Gordan Bobic wrote:
>> On 07/14/2014 11:44 PM, Dario Faggioli wrote:
>
>>> If you pin VCPU#1 to PCPU#1 and VCPU#2 to PCPU#2, with PCPU#1 and PCPU#2
>>> being HT siblings, what prevents Linux (in the guest) to run two of the
>>> four build jobs on VCPU#1 and VCPU#2 (i.e., on siblings PCPUs!!) for all
>>> the length of the benchmark? Nothing, I think.
>>
>> That would imply that Xen can somehow make a better decision that the
>> domU's kernel scheduler, something that doesn't seem that likely.
>>
> Well, as far as SMT load balancing is concerned, that is _exactly_ the
> case. The reason is simple: Xen knows the hw topology, and hence knows
> whether the sibling of an idle core is idle or busy. The guest kernel
> sees nothing about this, it just treat all its (V)CPUs as full cores, so
> it most likely will do a bad job in this case.
>
>>> And in fact, pinning would also result in good (near to native,
>>> perhaps?) performance, if we were exposing the SMT topology details to
>>> guests as, in that case, Linux would do the balancing properly. However,
>>> that's not the case either. :-(
>>
>> I see, so you are referring specifically to the HT case.
>>
> Yeah, well, that's what this benchmarks where all about :-)
>
>> I can see how
>> that could cause a problem. Does pinning improve the performance with HT
>> disabled?
>>
> HT disabled had pretty goo perf. already. Anyhow, I tried:
>
> Average Half load -j 2 Run (std deviation):
> Elapsed Time 56.462 (0.109179)
> Average Optimal load -j 4 Run (std deviation):
> Elapsed Time 31.526 (0.224789)
> Average Maximal load -j Run (std deviation):
> Elapsed Time 33.04 (0.439147)
>
> So a lot similar to the no-HT unpinned case, which on it's turn was a
> lot similar to baremetal without HT.
Just out of interest - in cases where there is a non-negligible
performance discrepancy with HT enabled (bare metal or Xen), does
disabling the C6 CPU state support in the BIOS help? C6 state
selectively disables CPU threads when the CPU is idle for power saving
purposes, but the disabling threshold can be too sensitive. Does Xen
handle this?
Gordan
prev parent reply other threads:[~2014-07-28 13:28 UTC|newest]
Thread overview: 14+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-07-01 16:43 Xen 4.5 development update konrad.wilk
2014-07-02 11:33 ` George Dunlap
2014-07-02 12:23 ` Jan Beulich
2014-07-11 6:51 ` Dario Faggioli
2014-07-14 16:12 ` Virt overehead with HT [was: Re: Xen 4.5 development update] Dario Faggioli
2014-07-14 16:32 ` Gordan Bobic
2014-07-14 16:44 ` Dario Faggioli
2014-07-14 16:55 ` George Dunlap
2014-07-14 17:22 ` Dario Faggioli
2014-07-14 18:31 ` Gordan Bobic
2014-07-14 22:44 ` Dario Faggioli
2014-07-15 0:10 ` Gordan Bobic
2014-07-15 2:30 ` Dario Faggioli
2014-07-28 13:28 ` Gordan Bobic [this message]
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=53D64FEB.1030300@bobich.net \
--to=gordan@bobich.net \
--cc=dario.faggioli@citrix.com \
--cc=george.dunlap@citrix.com \
--cc=george.dunlap@eu.citrix.com \
--cc=lars.kurth@citrix.com \
--cc=ross.lagerwall@citrix.com \
--cc=stefano.stabellini@citrix.com \
--cc=xen-devel@lists.xenproject.org \
/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).