LookingGlass/client
Geoffrey McRae 7349334811 [client] reworked polling logic and added GPU magic
SDL_RenderPresent calls SwapBuffers which doesn't block even with vsync
enabled until the driver/gpu has buffered several frames, this is no good
for our use case where low latency is of ultimate importance. This patch
measures the swap interval, ensures the time is consumed and then calls
glFinish to ensure that there is no buffered data. The results on NVidia
hardware are exceptional, but will need verification on AMD hardware.

Polling logic has also been improved, the client will hunt for the best
delay rather then resorting to waiting on an event from the guest, avoiding
scheduler latency caused by waiting on the irq event.
2017-12-12 03:59:57 +11:00
..
ivshmem [client] changed ivshmem wait timeout to avoid stalls on startup 2017-12-12 03:59:57 +11:00
renderers [client] added renderer abstratction 2017-12-12 03:59:57 +11:00
spice [misc] common and client project rename to "Looking Glass" 2017-12-12 03:59:57 +11:00
.gitignore [client] added renderer abstratction 2017-12-12 03:59:57 +11:00
kb.h [misc] common and client project rename to "Looking Glass" 2017-12-12 03:59:57 +11:00
lg-renderer.h [client] added renderer abstratction 2017-12-12 03:59:57 +11:00
lg-renderers.h [client] added renderer abstratction 2017-12-12 03:59:57 +11:00
main.c [client] reworked polling logic and added GPU magic 2017-12-12 03:59:57 +11:00
Makefile [client] removed useless delay functions 2017-12-12 03:59:57 +11:00