On 12/2/11 3:19 AM, Pierre Ossman wrote:
> Annoying. I did some work at making the thing more asynchronous, but
> more might be needed. If the problem is getting the data on the wire
> rather than the actual encoding, then a quick fix is increasing the
> outgoing buffer size. As long as your entire update fits in there, then
> X won't be throttled (and the update timer should also be more precise).

Not sure if I follow.  It's not the send delay that's the problem-- it's
the time that the CPU takes to encode the framebuffer.  Not sure how
making it asynchronous would help, either.  The issue with that is that
the encoding time will generally be longer than the deferred update
time, so the DUT will trigger immediately upon the previous update being
sent, and there won't be any "slack" time for X updates to arrive.

Running the server with "-DeferUpdate=1" restores the old performance,
but it would be nice to not have to do that.

In the early days of TurboVNC, I spent way too much time haggling with
the DUT and discovered that whether or not a FBU was deferred or sent
immediately had a lot to do with the timing of FBUR's from the client.
I mention this only because TigerVNC 1.1's behavior is based on that
research.  On a high-speed network, the default 40 ms DUT worked OK when
the client was waiting until after the current FBU had been processed
before sending a new FBUR, but on a WAN, that was suboptimal.  We wanted
instead for the client to put a new FBUR in flight while it was working
on the previous FBU.  This improved WAN performance, since the FBUR's
were effectively pipelined, but now the timing of the FBUR's was causing
almost all updates on the server to be deferred, which decreased
performance dramatically on a LAN.  The solution was to set the DUT to 1 ms.

Now, with the latest TigerVNC code, my understanding of it is that
FBUR's no longer result in an immediate FBU unless there is no deferred
update currently in progress.  Thus, almost all updates will be deferred
updates now.  That means that we're always going to incur the overhead
of the deferred update timer on every frame.

------------------------------------------------------------------------------
All the data continuously generated in your IT infrastructure 
contains a definitive record of customers, application performance, 
security threats, fraudulent activity, and more. Splunk takes this 
data and makes sense of it. IT sense. And common sense.
http://p.sf.net/sfu/splunk-novd2d
_______________________________________________
Tigervnc-devel mailing list
Tigervnc-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/tigervnc-devel

Reply via email to