[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Xen-devel] Hyperthreading network benchmark



> I found enabling hyperthreading for Xen (the hypervisor layer) would
> degrade network performance. I wonder if the synchronization cost of Xen
> (the hypervisor) running on multi cores/multiprocessors environment is
> high (around 30 %).

If the domain controlling the network interface is on a different (logical) 
processor to the domain which is currently using it, there is an overhead 
because inter-processor interrupts (IPIs) must be sent to notify the other 
CPU when data is ready.

Xen's pipelined, asynchronous device channels attempt to avoid this problem 
but some workloads (e.g. small packets at a very high rate) will still 
unavoidably stress the system.

We found in tests that hyperthreading improved performance over simply using 
one core, when running dom0 on one hyperthread and dom1 on another.  An IPI 
is still sent between the two logical CPUs, which still has overhead, however 
the performace seemed to be improved because context switches were avoided, 
relative to time-slicing both domains on one CPU.

It's interesting that performance reduced for you when enabling HT.  Perhaps 
the context-swtich vs IPI tradeoff is different for you, either for hardware 
reasons (we were using 3GHz Xeons, so had a different core, larger caches, 
etc.) or because of some software change.

My $0.02
Mark


-------------------------------------------------------
This SF.Net email is sponsored by:
Sybase ASE Linux Express Edition - download now for FREE
LinuxWorld Reader's Choice Award Winner for best database on Linux.
http://ads.osdn.com/?ad_id=5588&alloc_id=12065&op=click
_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxxxx
https://lists.sourceforge.net/lists/listinfo/xen-devel


 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.