mirror of
https://github.com/gnif/LookingGlass.git
synced 2024-12-23 14:03:40 +00:00
An extremely low latency KVMFR (KVM FrameRelay) implementation for guests with VGA PCI Passthrough.
37196f1f0e
Without configuring Wayland compositors to send frame callbacks as late as
possible, JIT rendering can increase latency by more than one frame.
For example, by default, sway asks applications to render right after a
vblank, and does its own composition right after a vblank, resulting in
~2 frame's worth of latency. If max_render_time is set on the output,
it composes that many milliseconds before the vblank, losing ~1 frame's
worth of latency. If max_render_time is set on the window also, the frame
callback is sent that many milliseconds before composition, and we achieve
perfectly low latency.
Therefore, out of the box, JIT rendering should not be enabled, as manual
compositor configuration is required for optimal results.
For reference, the following sway settings results in the best latency:
output <insert output name> max_render_time 1
for_window [app_id="looking-glass-client"] max_render_time 1
This reverts commit
|
||
---|---|---|
.github | ||
client | ||
cmake | ||
common | ||
contrib/redhat | ||
doc | ||
host | ||
module | ||
obs | ||
profile | ||
repos | ||
resources | ||
vendor | ||
.gitattributes | ||
.gitignore | ||
.gitmodules | ||
AUTHORS | ||
CONTRIBUTORS | ||
LICENSE | ||
README.md | ||
refresh-copyright | ||
version.cmake |
Looking Glass
An extremely low latency KVMFR (KVM FrameRelay) implementation for guests with VGA PCI Passthrough.
- Project Website: https://looking-glass.io
- Documentation: https://looking-glass.io/docs
Documentation
❕❕❕ IMPORTANT ❕❕❕
This project contains submodules that must be checked out if building from the git repository! If you are not a developer and just want to compile Looking Glass, please download the source archive from the website instead:
https://looking-glass.io/downloads
Source code for the documentation can be found in the /doc
directory.
You may view this locally as HTML by running make html
with python3-sphinx
installed.