Anthony Liguori wrote: > Laurent Vivier wrote: >> Avi Kivity wrote: >> >>> Aurelien Jarno wrote: >>> >>>> >>>> >>>>> What is your disk image file format, or are you using a partition? >>>>> >>>>> >>>> I am using a raw image file on an ext3 partition. >>>> >>>> >>>> >>>>> Do the results change (on kvm-14) if you pin the guest to a core with >>>>> 'taskset 1 qemu ...' >>>>> >>>>> >>>> Bingo. It now works even faster than kvm-13! >>>> >>>> real 0m22.307s >>>> user 0m13.935s >>>> sys 0m4.720 >>>> >>>> >>>> >>> I'm guessing this is due to the glibc aio implementation, which uses >>> threads instead of true aio. The threads may cause the vcpu to migrate >>> frequently from one code to another. >>> >>> There are two possible solutions: >>> >>> - use native aio from http://www.bullopensource.org/posix/. I think >>> the aio signal patches are not yet in, so this may not work. >>> - teach the scheduler about the cost of migrating vcpus >>> The first approach will solve itself eventually, though slowly if the >>> current slow rate of aio merging continues. We'll have to do the second. >>> >>> >> if you prefer the first one, Sébastien will release very soon aio patches for >> 2.6.20 with an up-to-date libposix-aio. >> > > Hi Laurent, Hi Anthony, > I gave that a shot a little bit ago. Ran into two problems. > > 1) Couldn't avoid linking to -lrt as QEMU uses time functions from it. > 2) While I could get things compiling (with patches), QEMU would SEGV > almost immediately. > > Could you guys maybe give compiling QEMU w/libposix-aio a shot? I'm > really interested to see if it makes a difference. Ok, I take a look at this. Regards, Laurent -- ------------- Laurent.Vivier-6ktuUTfB/bM@public.gmane.org -------------- "Any sufficiently advanced technology is indistinguishable from magic." - Arthur C. Clarke