[Mesa-dev] [PATCH v4 25/44] anv: Enable VK_KHR_16bit_storage for SSBO and UBO

Jason Ekstrand jason at jlekstrand.net
Thu Nov 30 20:50:44 UTC 2017


I'd roll 24 in with 25 personally.  Either way, 24 and 25 are

Reviewed-by: Jason Ekstrand <jason at jlekstrand.net>

I'm going to try and get enough reviewed today that we can land this part.

On Wed, Nov 29, 2017 at 6:57 PM, Jose Maria Casanova Crespo <
jmcasanova at igalia.com> wrote:

> From: Alejandro Piñeiro <apinheiro at igalia.com>
>
> It uses VK_KHR_get_physical_device_properties2 functionality to expose
> if the extension is supported or not.
>
> v2: update due rebase against master (Alejandro)
>
> v3: (Jason Ekstrand)
>     - Move this patch up in VK_KHR_16bit_storage series enabling only
>       storageBuffer16BitAccess and uniformAndStorageBuffer16BitAccess.
>     - Only expose VK_KHR_16bit_storage on Gen8+
>
> Signed-off-by: Jose Maria Casanova Crespo <jmcasanova at igalia.com>
> Signed-off-by: Alejandro Piñeiro <apinheiro at igalia.com>
> ---
>  src/intel/vulkan/anv_device.c      | 13 +++++++++++++
>  src/intel/vulkan/anv_extensions.py |  1 +
>  2 files changed, 14 insertions(+)
>
> diff --git a/src/intel/vulkan/anv_device.c b/src/intel/vulkan/anv_device.c
> index b5577ee61d..69a1f5a5f6 100644
> --- a/src/intel/vulkan/anv_device.c
> +++ b/src/intel/vulkan/anv_device.c
> @@ -725,6 +725,19 @@ void anv_GetPhysicalDeviceFeatures2KHR(
>           break;
>        }
>
> +      case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_16BIT_STORAGE_FEATURES_KHR:
> {
> +         ANV_FROM_HANDLE(anv_physical_device, pdevice, physicalDevice);
> +
> +         VkPhysicalDevice16BitStorageFeaturesKHR *features =
> +            (VkPhysicalDevice16BitStorageFeaturesKHR *)ext;
> +
> +         features->storageBuffer16BitAccess = pdevice->info.gen >= 8;
> +         features->uniformAndStorageBuffer16BitAccess =
> pdevice->info.gen >= 8;
> +         features->storagePushConstant16 = false;
> +         features->storageInputOutput16 = false;
> +         break;
> +      }
> +
>        default:
>           anv_debug_ignored_stype(ext->sType);
>           break;
> diff --git a/src/intel/vulkan/anv_extensions.py b/src/intel/vulkan/anv_
> extensions.py
> index b1e984b8cd..c49718dfd4 100644
> --- a/src/intel/vulkan/anv_extensions.py
> +++ b/src/intel/vulkan/anv_extensions.py
> @@ -51,6 +51,7 @@ class Extension:
>  # and dEQP-VK.api.info.device fail due to the duplicated strings.
>  EXTENSIONS = [
>      Extension('VK_ANDROID_native_buffer',                 5, 'ANDROID'),
> +    Extension('VK_KHR_16bit_storage',                     1,
> 'device->info.gen >= 8'),
>      Extension('VK_KHR_bind_memory2',                      1, True),
>      Extension('VK_KHR_dedicated_allocation',              1, True),
>      Extension('VK_KHR_descriptor_update_template',        1, True),
> --
> 2.14.3
>
> _______________________________________________
> mesa-dev mailing list
> mesa-dev at lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/mesa-dev
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.freedesktop.org/archives/mesa-dev/attachments/20171130/8fdf5a82/attachment.html>


More information about the mesa-dev mailing list