On Fri, Jul 23, 2010 at 2:06 PM, Matej Zary <matej.zary@xxxxxxxxx> wrote:
> I'm not expert in this area, but as far i remember, using Hyper
> Threading in Xen used to be counterproductive, because the fake HT cores
> doesn't have own processing power (if this has changed, somebody correct
> me please! :) ).
these are not 'fake cores'; they're extra execution threads in a core.
the idea is to increment the number of non-dependent instructions
available to the OOOexecution unit; so when some part of the CPU is
busy (likely waiting for RAM, or a complex ALU operation), it can do
other useful work.
kinda like at the OS level some processes can advance while others
are waiting for IO (like hard disk). at the CPU level, one thread can
advance while the other is waiting for RAM. the end result is to
reduce the frequency of pipeilne bubbles that can stall the whole
chip.
in the pentium era (with absurdly long pipelines) it had a very
noticeable advantage when the OS had enough threads to keep the CPU
busy. only on heavy single-threaded applications the overhead becomes
larger than the advantage; i think gamers of the time tended to shun
hyperthreading because all games were singlethreaded.
nowadays i don't know if it's less important (because pipelines aren't
so deep) or more important (because a greater mismatch between RAM and
CPU access speeds), in any case, on servers you're almost guaranteed
to have lots of runnable threads, so hyperthreading does benefit the
majority of cases.
in Xen specific case, you're even more likely to have lots and lots of
threads available to the CPU making hyperthreading happy. and two
extra benefits: with more threads, you have finer granularity to
assign CPU power to your DomU's. second, (maybe more important) on
heavy IO setups you might have to dedicate a CPU exclusively to Dom0
to eliminate domain switches, and dedicating a thread is less
expensive than dedicating a core.
--
Javier
_______________________________________________
Xen-users mailing list
Xen-users@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-users
|