|
From: | Anthony Liguori |
Subject: | Re: [Qemu-devel] [patch] cocoa.m - Core Graphics support |
Date: | Wed, 30 Jan 2008 15:54:50 -0600 |
User-agent: | Thunderbird 2.0.0.9 (X11/20071229) |
Mike Kronenberg wrote:
While testing with Quartzdebug, I realized, that qemu is updating always the whole screenwidth even if only the mouse is moved... is this a qemu problem, or is this the default windows behaviour?
VGA framebuffer operations come in as memory operations. They're tracked by watching what memory gets dirtied. This can only operate at a page-granularity so this results in scan-line granularity updates. The VNC front-end goes to great lengths to keep a shadowed framebuffer and reduce these updates to a smaller update region. You could possibly look at refactoring that code. However...
I would be amazed if screen updates on OS X are so slow that it would make a difference if updates are in scanline granularities. The copying latency is nothing compared to the other latencies in QEMU. A modern processor can move memory at an extremely high speed.
At a refresh rate of 30 times per second, this is only ~4MB of data for mouse movements. A typical processor can easily handle many GB of data per second.
Regards, Anthony Liguori
Mike[1] http://developer.apple.com/documentation/Carbon/Conceptual/QuickDrawToQuartz2D/tq_image_data/chapter_6_section_2.html#//apple_ref/doc/uid/TP40001098-CH227-BBCFFDBB
[Prev in Thread] | Current Thread | [Next in Thread] |