[Mesa-dev] [PATCH] radv: do not advertise D16_UNORM on VI

Samuel Pitoiset samuel.pitoiset at gmail.com
Fri Nov 3 10:36:16 UTC 2017



On 11/03/2017 11:10 AM, Samuel Pitoiset wrote:
> 
> 
> On 11/03/2017 11:07 AM, Alex Smith wrote:
>> Hi Samuel,
>>
>> D16_UNORM support is mandatory on 2D images according to the spec 
>> ("Features, Limits and Formats" chapter).
> 
> Missed that point, I'm going to have a look right now.
> Thanks.

Yeah, we can't do that. Sorry for the noise.

> 
>>
>> Thanks,
>> Alex
>>
>> On 3 November 2017 at 10:02, Samuel Pitoiset 
>> <samuel.pitoiset at gmail.com <mailto:samuel.pitoiset at gmail.com>> wrote:
>>
>>     TC compatible HTILE only supports D32_SFLOAT on VI, while GFX9
>>     supports both. This is a recommandation for apps because HTILE
>>     decompressions are costly.
>>
>>     This improves performance with Talos (73->76FPS) and Serious
>>     Sam 2017 (119->134FPS) because they no longer use any 16bpp
>>     depth surfaces and thus no HTILE decompressions are needed.
>>
>>     Mad Max and DOW3 are not affected, but F1 2017 still uses one
>>     16bpp depth surface even when the format is not advertised.
>>
>>     Signed-off-by: Samuel Pitoiset <samuel.pitoiset at gmail.com
>>     <mailto:samuel.pitoiset at gmail.com>>
>>     ---
>>       src/amd/vulkan/radv_formats.c | 9 +++++++++
>>       1 file changed, 9 insertions(+)
>>
>>     diff --git a/src/amd/vulkan/radv_formats.c
>>     b/src/amd/vulkan/radv_formats.c
>>     index 5c79ea7406..21a05c4bbd 100644
>>     --- a/src/amd/vulkan/radv_formats.c
>>     +++ b/src/amd/vulkan/radv_formats.c
>>     @@ -1122,6 +1122,15 @@ static VkResult
>>     radv_get_image_format_properties(struct radv_physical_device *ph
>>                      }
>>              }
>>
>>     +       if (physical_device->rad_info.chip_class == VI &&
>>     +           info->format == VK_FORMAT_D16_UNORM) {
>>     +               /* Do not advertise D16_UNORM on VI because TC
>>     compatible HTILE
>>     +                * only supports D32_SFLOAT (GFX9 supports both),
>>     and HTILE
>>     +                * decompressions are costly.
>>     +                */
>>     +               goto unsupported;
>>     +       }
>>     +
>>              *pImageFormatProperties = (VkImageFormatProperties) {
>>                      .maxExtent = maxExtent,
>>                      .maxMipLevels = maxMipLevels,
>>     --
>>     2.15.0
>>
>>     _______________________________________________
>>     mesa-dev mailing list
>>     mesa-dev at lists.freedesktop.org 
>> <mailto:mesa-dev at lists.freedesktop.org>
>>     https://lists.freedesktop.org/mailman/listinfo/mesa-dev
>>     <https://lists.freedesktop.org/mailman/listinfo/mesa-dev>
>>
>>


More information about the mesa-dev mailing list