[PATCH v2 07/12] qxl-wddm-dod: Set VSync indication period to 200ms

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



From: "yuri.benditovich@xxxxxxxxxx" <yuri.benditovich@xxxxxxxxxx>

Default indication period (13-17ms) from the driver to OS
increases total CPU consumption during presentation operations.
Reducing indication frequency to 200 ms reduces cost of this
feature. Till now we do not see any negative impact of this.

Signed-off-by: Yuri Benditovich <yuri.benditovich@xxxxxxxxxx>
---
 qxldod/QxlDod.cpp | 6 ++++--
 1 file changed, 4 insertions(+), 2 deletions(-)

diff --git a/qxldod/QxlDod.cpp b/qxldod/QxlDod.cpp
index 7341389..aa70f39 100755
--- a/qxldod/QxlDod.cpp
+++ b/qxldod/QxlDod.cpp
@@ -19,6 +19,7 @@
                           (QXL_INTERRUPT_CURSOR) | \
                           (QXL_INTERRUPT_IO_CMD))
 
+#define VSYNC_PERIOD    200 // ms, use 0 for auto
 #define VSYNC_RATE      75
 
 BOOLEAN g_bSupportVSync;
@@ -5006,8 +5007,9 @@ VOID QxlDod::EnableVsync(BOOLEAN bEnable)
         else
         {
             LARGE_INTEGER li;
-            LONG period = 1000 / VSYNC_RATE;
-            DbgPrint(TRACE_LEVEL_WARNING, ("Enabled VSync(fired %d)\n", m_VsyncFiredCounter));
+            LONG period = VSYNC_PERIOD;
+            if (!period) period = 1000 / VSYNC_RATE;
+            DbgPrint(TRACE_LEVEL_WARNING, ("Enabled VSync %d ms(fired %d)\n", period, m_VsyncFiredCounter));
             li.QuadPart = -10000000 / VSYNC_RATE;
             KeSetTimerEx(&m_VsyncTimer, li, period, &m_VsyncTimerDpc);
         }
-- 
2.7.0.windows.1

_______________________________________________
Spice-devel mailing list
Spice-devel@xxxxxxxxxxxxxxxxxxxxx
https://lists.freedesktop.org/mailman/listinfo/spice-devel




[Index of Archives]     [Linux ARM Kernel]     [Linux ARM]     [Linux Omap]     [Fedora ARM]     [IETF Annouce]     [Security]     [Bugtraq]     [Linux]     [Linux OMAP]     [Linux MIPS]     [ECOS]     [Asterisk Internet PBX]     [Linux API]     [Monitors]