OSDN Git Service

radv/gfx10: double the number of tessellation offchip buffers per SE
authorSamuel Pitoiset <samuel.pitoiset@gmail.com>
Wed, 26 Jun 2019 07:09:33 +0000 (09:09 +0200)
committerBas Nieuwenhuizen <bas@basnieuwenhuizen.nl>
Sun, 7 Jul 2019 15:51:32 +0000 (17:51 +0200)
Each gfx10 shader engine corresponds to two gfx9 shader engines, so scale
the number of offchip buffers accordingly.

Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl>
src/amd/vulkan/radv_device.c

index d111ab6..4a1078a 100644 (file)
@@ -2340,9 +2340,11 @@ radv_get_hs_offchip_param(struct radv_device *device, uint32_t *max_offchip_buff
         *
         * Follow AMDVLK here.
         */
-       if (device->physical_device->rad_info.family == CHIP_VEGA10 ||
-           device->physical_device->rad_info.chip_class == GFX7 ||
-           device->physical_device->rad_info.chip_class == GFX6)
+       if (device->physical_device->rad_info.chip_class >= GFX10) {
+               max_offchip_buffers_per_se = 256;
+       } else if (device->physical_device->rad_info.family == CHIP_VEGA10 ||
+                  device->physical_device->rad_info.chip_class == GFX7 ||
+                  device->physical_device->rad_info.chip_class == GFX6)
                --max_offchip_buffers_per_se;
 
        max_offchip_buffers = max_offchip_buffers_per_se *