svga/drm: Flushing preemptively on a 1/3 of the aperture.
authorJosé Fonseca <jfonseca@vmware.com>
Thu, 3 Feb 2011 15:06:39 +0000 (15:06 +0000)
committerJosé Fonseca <jfonseca@vmware.com>
Thu, 3 Feb 2011 15:15:23 +0000 (15:15 +0000)
Exactly one half would be the ideal, but this is a soft limit, and one
more byte over brings us to synchronous behavior.

Flushing when the referred GMR exceeds one third of the aperture gives us
statistically better performance.

src/gallium/winsys/svga/drm/vmw_context.c

index 11626ee637d9a93db90a85a7ce4e60c4800b1bc8..f2124c1bf6508a2c877a9906d63d2aea0ab704d7 100644 (file)
@@ -320,7 +320,7 @@ vmw_swc_region_relocation(struct svga_winsys_context *swc,
     * to the FIFO won't cause flushing in the host.
     */
    vswc->seen_regions += reloc->buffer->base.size;
-   if(vswc->seen_regions >= VMW_GMR_POOL_SIZE/2)
+   if(vswc->seen_regions >= VMW_GMR_POOL_SIZE/3)
       vswc->preemptive_flush = TRUE;
 }