Mesa (master): anv: Implement VK_KHR_dedicated_allocation
Jason Ekstrand
jekstrand at kemper.freedesktop.org
Sat Jul 15 16:00:42 UTC 2017
Module: Mesa
Branch: master
Commit: c02da9cad6b5ed09c8dfcf600380974b8075d792
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=c02da9cad6b5ed09c8dfcf600380974b8075d792
Author: Jason Ekstrand <jason.ekstrand at intel.com>
Date: Fri Apr 28 05:17:38 2017 -0700
anv: Implement VK_KHR_dedicated_allocation
We always recommend sub-allocation and don't do anything special for
dedicated allocations.
Reviewed-by: Samuel Iglesias Gonsálvez <siglesias at igalia.com>
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin at intel.com>
---
src/intel/vulkan/anv_device.c | 18 ++++++++++++++++++
src/intel/vulkan/anv_entrypoints_gen.py | 1 +
2 files changed, 19 insertions(+)
diff --git a/src/intel/vulkan/anv_device.c b/src/intel/vulkan/anv_device.c
index c2b3eb4a4a..cacfb39bde 100644
--- a/src/intel/vulkan/anv_device.c
+++ b/src/intel/vulkan/anv_device.c
@@ -441,6 +441,10 @@ static const VkExtensionProperties global_extensions[] = {
static const VkExtensionProperties device_extensions[] = {
{
+ .extensionName = VK_KHR_DEDICATED_ALLOCATION_EXTENSION_NAME,
+ .specVersion = 1,
+ },
+ {
.extensionName = VK_KHR_DESCRIPTOR_UPDATE_TEMPLATE_EXTENSION_NAME,
.specVersion = 1,
},
@@ -1748,6 +1752,13 @@ void anv_GetBufferMemoryRequirements2KHR(
vk_foreach_struct(ext, pMemoryRequirements->pNext) {
switch (ext->sType) {
+ case VK_STRUCTURE_TYPE_MEMORY_DEDICATED_REQUIREMENTS_KHR: {
+ VkMemoryDedicatedRequirementsKHR *requirements = (void *)ext;
+ requirements->prefersDedicatedAllocation = VK_FALSE;
+ requirements->requiresDedicatedAllocation = VK_FALSE;
+ break;
+ }
+
default:
anv_debug_ignored_stype(ext->sType);
break;
@@ -1790,6 +1801,13 @@ void anv_GetImageMemoryRequirements2KHR(
vk_foreach_struct(ext, pMemoryRequirements->pNext) {
switch (ext->sType) {
+ case VK_STRUCTURE_TYPE_MEMORY_DEDICATED_REQUIREMENTS_KHR: {
+ VkMemoryDedicatedRequirementsKHR *requirements = (void *)ext;
+ requirements->prefersDedicatedAllocation = VK_FALSE;
+ requirements->requiresDedicatedAllocation = VK_FALSE;
+ break;
+ }
+
default:
anv_debug_ignored_stype(ext->sType);
break;
diff --git a/src/intel/vulkan/anv_entrypoints_gen.py b/src/intel/vulkan/anv_entrypoints_gen.py
index 4cc1f6a8be..820a1f14ec 100644
--- a/src/intel/vulkan/anv_entrypoints_gen.py
+++ b/src/intel/vulkan/anv_entrypoints_gen.py
@@ -33,6 +33,7 @@ from mako.template import Template
MAX_API_VERSION = 1.0
SUPPORTED_EXTENSIONS = [
+ 'VK_KHR_dedicated_allocation',
'VK_KHR_descriptor_update_template',
'VK_KHR_get_memory_requirements2',
'VK_KHR_get_physical_device_properties2',
More information about the mesa-commit
mailing list