mike-jumper opened a new pull request, #590:
URL: https://github.com/apache/guacamole-server/pull/590

   These changes address the following issues mainly affecting the performance 
of RDP connections:
   
   * Repeated checking of the `ops` lock within the render thread leads to 
unnecessary contention when `GUAC_DISPLAY_RENDER_THREAD_STATE_FRAME_MODIFIED` 
is typically signaled frequently within a single frame. We can instead sleep 
between checks when there is no explicit frame boundary.
   * The `message_lock` leads to contention with handling of instructions like 
"mouse" and "sync", leading to a feedback loop of lag adjustments, but 
`message_lock` appears to no longer be needed (need to verify this).
   * We were erroneously _not_ resetting FreeRDP's invalid region (dirty rect) 
within the GDI, leading to unnecessary reevaluation of regions of the display 
that have not changed.
   
   Opening as a draft while checking:
   
   - [ ] Is there anything further we can do to avoid slowdown between 
individual GDI drawing operations, or is this unavoidable?
   - [ ] Is there anything we can do to avoid lag when using FreeRDP 3.x, which 
apparently does not provide the same `AsyncInput` setting as FreeRDP 2.x?
   - [ ] Is it truly safe to completely eliminate the `message_lock` for both 
FreeRDP 2.x and 3.x?


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: dev-unsubscr...@guacamole.apache.org

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org

Reply via email to