|
From: | Gerhard Wiesinger |
Subject: | Re: [Qemu-devel] Re: QEMU-KVM and video performance |
Date: | Wed, 21 Apr 2010 21:08:58 +0200 (CEST) |
User-agent: | Alpine 2.00 (LFD 1167 2008-08-23) |
On Wed, 21 Apr 2010, Jamie Lokier wrote:
Gerhard Wiesinger wrote:Would it be possible to handle these writes through QEMU directly (without KVM), because performance is there very well (looking at the code there is some pointer arithmetic and some memory write done)?I've noticed extremely slow VGA performance too, when installing OSes. It makes the difference between installing in a few minutes, and installing taking hours - just because of the slow VGA. So generally I use qemu for installing old versions of Windows, then change to KVM to run them after installing. Switching between KVM and qemu automatically based on guest code behaviour, and making both memory models and device models compatible at run time, is a difficult thing. I guess it's not worth the difficulty just to speed up VGA.I think this is very easy to distingish: 1.) VGA Segment A000 is legacy and should be handled through QEMU and not through KVM (because it is much more faster). Also 16 color modes should be fast enough there. 2.) All other flat PCI memory accesses should be handled through KVM (there is a specialized driver loaded for that PCI device in the non legacy OS). Is that easily possible?No it isn't. Distingushing addresses is trivial. You've ignored the hard part, which is switching between different virtualisation architectures...
Hmmm. I'm very new to QEMU and KVM but at least accessing the virtual HW of QEMU even from KVM must be possible (e.g. memory and port accesses are done on nearly every virtual device) and therefore I'm ending in C code in
the QEMU hw/*.c directory. Therefore also the VGA memory area should be able to be accessable from KVM but with the specialized and fast memory access of QEMU. Am I missing something?BTW: Still not clear why performance is low with KVM since there are no window changes in the testcase involved which could cause a (slow) page fault.
Thnx. Ciao, Gerhard -- http://www.wiesinger.com/
[Prev in Thread] | Current Thread | [Next in Thread] |