On Wed, Aug 04, 2010 at 06:25:52PM +0300, Gleb Natapov wrote: > On Wed, Aug 04, 2010 at 09:57:17AM -0500, Anthony Liguori wrote: > > There are better ways like using string I/O and optimizing the PIO > > path in the kernel. That should cut down the 1s slow down with a > > 100MB initrd by a bit. But honestly, shaving a couple hundred ms > > further off the initrd load is just not worth it using the current > > model. > > > The slow down is not 1s any more. String PIO emulation had many bugs > that were fixed in 2.6.35. I verified how much time it took to load 100M > via fw_cfg interface on older kernel and on 2.6.35. On older kernels on > my machine it took ~2-3 second on 2.6.35 it took 26s. Some optimizations > that was already committed make it 20s. I have some code prototype that > makes it 11s. I don't see how we can get below that, surely not back to > ~2-3sec. I guess this slowness is primarily for kvm. I just ran some tests on the latest qemu (with TCG). I pulled in a 400Meg file over fw_cfg using the SeaBIOS interface - it takes 9.8 seconds (pretty consistently). Oddly, if I change SeaBIOS to use insb (string pio) it takes 11.5 seconds (again, pretty consistently). These times were measured on the host - they don't include the extra time it takes qemu to start up (during which it reads the file into its memory). -Kevin -- To unsubscribe from this list: send the line "unsubscribe kvm" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html