[libvirt-users] Libvirt profiling

Hi For a school project I am researching performance issues when using libvirt to run very large numbers of virtual machines. My experiments indicate that having more CPU cores negatively impacts the performance. A simple desktop with an Intel Core 2 Duo E6550 performs better than a server with a 48 core AMD CPU. Limiting the cores used through 'cputune' improves performance on the server. If anyone has got any explanations for this, it would be greatly appreciated. Further on I would like to profile the slowdowns, but I am not sure how to approach this problem. Any recommendations on how to do this? Best regards Jon

On Tue, Apr 23, 2013 at 10:09:15AM +0200, Jon Martin Sigvaldsen wrote:
Hi
For a school project I am researching performance issues when using libvirt to run very large numbers of virtual machines.
My experiments indicate that having more CPU cores negatively impacts the performance. A simple desktop with an Intel Core 2 Duo E6550 performs better than a server with a 48 core AMD CPU. Limiting the cores used through 'cputune' improves performance on the server. If anyone has got any explanations for this, it would be greatly appreciated.
When you get machines with large numbers of CPUs, you've undoubtably also got a NUMA topology involved. To get maximum performance out of such machines you need to ensure that each VM runs entirely within one single NUMA node. If you have a VM whose memory allocation is split across NUMA nodes, or one where memory is on a different node to its CPUs, they you will absoletely ruin performance of the machine. Latest libvirt has integration with a daemon called 'autonuma' which attempts to place individual VMs within individual NUMA nods when they are started.
Further on I would like to profile the slowdowns, but I am not sure how to approach this problem. Any recommendations on how to do this?
oprofile is one useful tool for profiling kernel + application operation. Daniel -- |: http://berrange.com -o- http://www.flickr.com/photos/dberrange/ :| |: http://libvirt.org -o- http://virt-manager.org :| |: http://autobuild.org -o- http://search.cpan.org/~danberr/ :| |: http://entangle-photo.org -o- http://live.gnome.org/gtk-vnc :|
participants (2)
-
Daniel P. Berrange
-
Jon Martin Sigvaldsen