On Tue, May 26, 2009 at 12:42:47PM -0400, Gerry Reno wrote:
Just a simple time-based solution would be sufficient. Right now
when
multiple guests all try to boot at the same time it takes about 4 times
as long for all of them to boot up as when you boot them individually.
Apparently too much context switching. So if we could check off an
autoboot flag and then say +120 seconds, that guest would start booting
120 seconds after the autoboot process started. Even this simple
mechansim would help quite a bit.
Now this is a interesting problem :-) It doesn't so much suggest the
provision of guest startup ordering, but rather the serialization of
guest startup - only if there were no other viable solution elsewhere
though.
I'd be surprised if context switching were the problem & if it was,
then I'd suggest beating up on the kernel guys to fix their schedular.
More likely is competition for disk access, and the parallel guest
startup causing storm of disk seeks, destroying overall I/O throughput.
I would still wonder if this could be solved in the kernel I/O schedular
either automatically, or with libvirt setting some tunable knob to tell
it to try and batch up I/O for the VM to avoid so much seeking. Of course
this is all conjecture without profiling / benchmarks to identify just
where the problem is.
Regards,
Daniel
--
|: Red Hat, Engineering, London -o-
http://people.redhat.com/berrange/ :|
|:
http://libvirt.org -o-
http://virt-manager.org -o-
http://ovirt.org :|
|:
http://autobuild.org -o-
http://search.cpan.org/~danberr/ :|
|: GnuPG: 7D3B9505 -o- F3C9 553F A1DA 4AC2 5648 23C1 B3DF F742 7D3B 9505 :|