Folks,
Here's a patch which allows guest CPU cycles to run concurrent with IO
syscalls:
http://people.brandeis.edu/~jcoiner/qemu_idedma/qemu_dma_patch.html
It's actually two patches -- a patch which enables DMA support (the same
one posted here a few days ago) and a second patch which applies on top
of the first. The second patch is the big one, because there was a
little bit of refactoring and a few chunks of new code needed to get
concurrent IO going.
If you try this, please let me know what your experience is. This patch
makes the IDE code a little more gnarly, so it's only worth applying if
people notice the speed-up.
Under both CPU load and IO load, the patch improves the performance of
each, at least on my system. I haven't seen it make anything slower yet.
Troy and Henrik: thanks for suggesting AIO. That is probably the way to
go. This patch uses pthreads, because I was more comfortable with them.
The Linux Posix AIO stuff looked a little young. In the future, though,
it should be pretty easy to convert this implementation to AIO.
Regards,
--John
_______________________________________________
Qemu-devel mailing list
Qemu-devel@nongnu.org
http://lists.nongnu.org/mailman/listinfo/qemu-devel