Mesa (master): turnip: Fill out VkPhysicalDeviceSubgroupProperties

GitLab Mirror gitlab-mirror at kemper.freedesktop.org
Fri Jun 19 18:04:38 UTC 2020


Module: Mesa
Branch: master
Commit: cca9aa4dfd5b72f6ed4eb78c012772f78cd1a641
URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=cca9aa4dfd5b72f6ed4eb78c012772f78cd1a641

Author: Brian Ho <brian at brkho.com>
Date:   Fri Jun 19 12:47:08 2020 -0400

turnip: Fill out VkPhysicalDeviceSubgroupProperties

This commit fills out VkPhysicalDeviceSubgroupProperties if present
in a VkPhysicalDeviceProperties2. The values here are simply pulled
from the blob.

Fixes some flakes in dEQP-VK.subgroups.* since dEQP was reading
uninitialized values of VkPhysicalDeviceSubgroupProperties.

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5564>

---

 src/freedreno/vulkan/tu_device.c | 10 ++++++++++
 1 file changed, 10 insertions(+)

diff --git a/src/freedreno/vulkan/tu_device.c b/src/freedreno/vulkan/tu_device.c
index 27bfb464a4a..d7e3363a44f 100644
--- a/src/freedreno/vulkan/tu_device.c
+++ b/src/freedreno/vulkan/tu_device.c
@@ -948,6 +948,16 @@ tu_GetPhysicalDeviceProperties2(VkPhysicalDevice physicalDevice,
          properties->filterMinmaxSingleComponentFormats = true;
          break;
       }
+      case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_PROPERTIES: {
+         VkPhysicalDeviceSubgroupProperties *properties =
+            (VkPhysicalDeviceSubgroupProperties *)ext;
+         properties->subgroupSize = 64;
+         properties->supportedStages = VK_SHADER_STAGE_COMPUTE_BIT;
+         properties->supportedOperations = VK_SUBGROUP_FEATURE_BASIC_BIT |
+                                           VK_SUBGROUP_FEATURE_VOTE_BIT;
+         properties->quadOperationsInAllStages = false;
+         break;
+      }
 
       default:
          break;



More information about the mesa-commit mailing list