QEMU-KVM and video performance

Gerhard Wiesinger
2010-04-19T19:14:40Z

Hello,

Finally I got QEMU-KVM to work but video performance under DOS is very
low (QEMU 0.12.3 stable and QEMU GIT master branch is fast, QEMU KVM is
slow)

I'm measuring 2 performance critical video performance parameters:
1.) INT 10h, function AX=4F05h (set same window/set window/get window)
2.) Memory performance to segment page A000h

So BIOS performance (which might be port performance to VGA index/value
port) is about factor 5 slower, memory performance is about factor 100
slower.

QEMU 0.12.3 and QEMU GIT performance is the same (in the measurement
tolerance) and listed only once, QEMU KVM is much more slower (details see
below).

Test programs can be provided, source code will be release soon.

Any ideas why KVM is so slow? Any ideas for improvement?

Thnx.

Ciao,
Gerhard

--
http://www.wiesinger.com/

==========================================================
QEMU 0.12.3 and QEMU GIT
==========================================================
INT10PER performance information V1.0, (c) 2010 by Gerhard Wiesinger

VESA set window: seconds=2, operations=1000000, ops/s=500000.0
VESA set window (nc): seconds=2, operations=1000000, ops/s=500000.0
VESA get window: seconds=2, operations=1000000, ops/s=500000.0

MEMPERF video performance V1.0, (c) 2010 by Gerhard Wiesinger

BYTE performance, time=10s, bytes=930611200, rate=88.750 MB/s
WORD performance, time=10s, bytes=766771200, rate=73.125 MB/s
DWORD performance, time=10s, bytes=812646400, rate=77.500 MB/s
QWORD performance, time=10s, bytes=806092800, rate=76.875 MB/s
==========================================================

==========================================================
QEMU-KVM
==========================================================
INT10PER performance information V1.0, (c) 2010 by Gerhard Wiesinger

VESA set window: seconds=9, operations=1000000, ops/s=111111.1
VESA set window (nc): seconds=9, operations=1000000, ops/s=111111.1
VESA get window: seconds=5, operations=1000000, ops/s=200000.0

MEMPERF video performance V1.0, (c) 2010 by Gerhard Wiesinger

BYTE performance, time=13s, bytes=13107200, rate=0.962 MB/s
WORD performance, time=13s, bytes=13107200, rate=0.962 MB/s
DWORD performance, time=12s, bytes=13107200, rate=1.042 MB/s
QWORD performance, time=13s, bytes=13107200, rate=0.962 MB/s
==========================================================