radeonsi/gfx10: double the number of tessellation offchip buffers per SE
authorNicolai Hähnle <nicolai.haehnle@amd.com>
Thu, 30 Aug 2018 15:06:52 +0000 (17:06 +0200)
committerMarek Olšák <marek.olsak@amd.com>
Wed, 3 Jul 2019 19:51:13 +0000 (15:51 -0400)
Each gfx10 shader engine corresponds to two gfx9 shader engines, so scale
the number of offchip buffers accordingly.

Acked-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl>
src/gallium/drivers/radeonsi/si_pipe.c

index 7eaa400..c2cee02 100644 (file)
@@ -1031,9 +1031,11 @@ radeonsi_screen_create_impl(struct radeon_winsys *ws,
         */
        unsigned max_offchip_buffers_per_se;
 
+       if (sscreen->info.chip_class >= GFX10)
+               max_offchip_buffers_per_se = 256;
        /* Only certain chips can use the maximum value. */
-       if (sscreen->info.family == CHIP_VEGA12 ||
-           sscreen->info.family == CHIP_VEGA20)
+       else if (sscreen->info.family == CHIP_VEGA12 ||
+                sscreen->info.family == CHIP_VEGA20)
                max_offchip_buffers_per_se = double_offchip_buffers ? 128 : 64;
        else
                max_offchip_buffers_per_se = double_offchip_buffers ? 127 : 63;