nvfx: new 2D: use a CPU copy for up to 4 pixels, up from 0
authorLuca Barbieri <luca@luca-barbieri.com>
Sun, 18 Apr 2010 14:43:19 +0000 (16:43 +0200)
committerLuca Barbieri <luca@luca-barbieri.com>
Sat, 21 Aug 2010 18:42:14 +0000 (20:42 +0200)
Seems a reasonable threshold for now.

Significantly speeds up Piglit's 1x1 glReadPixels (but, you know,
reading pixels in 1x1 blocks is NOT a good idea, especially if you
might be running on a less-than-perfect driver).

src/gallium/drivers/nvfx/nvfx_surface.c

index 8208c67f2a27e3b77c4e1ebae11e55939fb88274..7efdd954b4b4183db7fcc1df1f5a4944174658f7 100644 (file)
@@ -250,11 +250,7 @@ nvfx_resource_copy_region(struct pipe_context *pipe,
 
        static int copy_threshold = -1;
        if(copy_threshold < 0)
-       {
-               copy_threshold = debug_get_num_option("NOUVEAU_COPY_THRESHOLD", 0);
-               if(copy_threshold < 0)
-                       copy_threshold = 0;
-       }
+               copy_threshold = debug_get_num_option("NOUVEAU_COPY_THRESHOLD", 4);
 
        int dst_to_gpu = dstr->usage != PIPE_USAGE_DYNAMIC && dstr->usage != PIPE_USAGE_STAGING;
        int src_on_gpu = nvfx_resource_on_gpu(srcr);