[libvirt] [PATCH v2] Remove qemuDriverLock from almost everywhere

Daniel P. Berrange berrange at redhat.com
Mon Feb 11 17:04:15 UTC 2013


On Mon, Feb 11, 2013 at 04:59:24PM +0000, Daniel P. Berrange wrote:
> On Mon, Feb 11, 2013 at 04:47:29PM +0000, Daniel P. Berrange wrote:
> > From: "Daniel P. Berrange" <berrange at redhat.com>
> > 
> > With the majority of fields in the virQEMUDriverPtr struct
> > now immutable or self-locking, there is no need for practically
> > any methods to be using the QEMU driver lock. Only a handful
> > of helper APIs in qemu_conf.c now need it
> 
> BTW, example of the performance improvements this brings
> 
> With the 0.10.2 release of libvirt, running 4 threads in
> parallel, each starting + stopping 50 VMs, takes 2 mins 11
> seconds.
> 

Opps, somehow lost the middle paragraph

With this patch applied to GIT, the same test takes only
40 seconds.

> This is on a 2 CPU machine. I'd expect the win to be even
> greater on a machine with more CPUs.
> 
> 
> In terms of testing, I am using a torture test which runs
> multiple threads, each creating+destroying VMs in parallel.
> I've successfully run this for over 5000 VM create+delete
> pairs so far, without any issues (it has previously detected
> a few crashes and deadlocks during my earlier testing of
> previous versions of this patch).


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 :|




More information about the libvir-list mailing list