OSDN Git Service

radeon: use SAMPLE_SPLIT=2 for better MSAA perf on EG/CM
authorMarek Olšák <marek.olsak@amd.com>
Thu, 26 May 2016 12:33:12 +0000 (14:33 +0200)
committerMarek Olšák <marek.olsak@amd.com>
Tue, 14 Jun 2016 09:45:30 +0000 (11:45 +0200)
Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
radeon/radeon_surface.c

index 5ec9745..1424660 100644 (file)
@@ -957,8 +957,10 @@ static int eg_surface_best(struct radeon_surface_manager *surf_man,
             }
             surf->stencil_tile_split = 64;
         } else {
-            /* tile split must be >= 256 for colorbuffer surfaces */
-            surf->tile_split = MAX2(surf->nsamples * surf->bpe * 64, 256);
+            /* tile split must be >= 256 for colorbuffer surfaces,
+             * SAMPLE_SPLIT = tile_split / (bpe * 64), the optimal value is 2
+             */
+            surf->tile_split = MAX2(2 * surf->bpe * 64, 256);
             if (surf->tile_split > 4096)
                 surf->tile_split = 4096;
         }