Xpra: Ticket #1424: html5: faster network layer, input devices, etc

Follow up from #1341.

Video / paint:

Network layer:

Input devices:



Tue, 28 Feb 2017 13:13:57 GMT - Antoine Martin: attachment set

make it easier to test slow network and packet aggregation in client receiver code


Tue, 28 Feb 2017 13:15:19 GMT - Antoine Martin: attachment set

implement zero copy in network layer - only aggregate chunks if we have to, do it using fast set method


Tue, 28 Feb 2017 15:32:30 GMT - Antoine Martin: attachment set

try to manage the timers and only use them as needed - actually makes things slower


Tue, 28 Feb 2017 15:48:40 GMT - Antoine Martin: attachment set

alternative implementation of managed timers


Tue, 28 Feb 2017 16:07:21 GMT - Antoine Martin: status changed

We could also modify process_receive_queue to only parse the "packet size", "packet flags" and "padding" when we get the full 8-byte header - small saving which would make the code harder to read. meh.

With these changes, testing with glxspheres at high res, the throughput and framerate are increased - but really not by much. And this is even more wasteful than before (running the timers at full speed), so r15188 switches to "on-demand" timers. (also a bit slower?)

Big question: how can we validate those changes better? We need reliable performance data to compare before and after, preferably using a real-world use case (not glxgears / glxspheres).. As some of these changes may actually make things worse.


Sun, 05 Mar 2017 17:46:59 GMT - Antoine Martin: attachment set

two-way clipboard


Thu, 09 Mar 2017 07:00:19 GMT - Antoine Martin:


Fri, 10 Mar 2017 06:59:39 GMT - Antoine Martin: owner, status, summary changed

@afarr: since we don't have a reliable way of measuring performance, I'm not sure there's anything here for you to test - feel free to close as FYI. (just bear in mind that the scrolling paint code still looks buggy with the html5 client: #1432?)


Sun, 12 Mar 2017 08:32:47 GMT - Antoine Martin:


Wed, 21 Jun 2017 19:51:59 GMT - J. Max Mena: status changed; resolution set

Noted and closing.


Sat, 23 Jan 2021 05:23:56 GMT - migration script:

this ticket has been moved to: https://github.com/Xpra-org/xpra/issues/1424