Class KHRGlobalPriority
QUEUE_GLOBAL_PRIORITY_MEDIUM_EXT.
Implementations can report which global priority levels are treated differently by the implementation. It is intended primarily for use in system integration along with certain platform-specific priority enforcement rules.
The driver implementation will attempt to skew hardware resource allocation in favor of the higher-priority task. Therefore, higher-priority work may retain similar latency and throughput characteristics even if the system is congested with lower priority work.
The global priority level of a queue shall take precedence over the per-process queue priority (VkDeviceQueueCreateInfo::pQueuePriorities).
Abuse of this feature may result in starving the rest of the system from hardware resources. Therefore, the driver implementation may deny requests to acquire a priority above the default priority (QUEUE_GLOBAL_PRIORITY_MEDIUM_EXT) if the caller does not have sufficient privileges. In this scenario ERROR_NOT_PERMITTED_EXT is returned.
The driver implementation may fail the queue allocation request if resources required to complete the operation have been exhausted (either by the same process or a different process). In this scenario ERROR_INITIALIZATION_FAILED is returned.
- Name String
VK_KHR_global_priority- Extension Type
- Device extension
- Registered Extension Number
- 189
- Revision
- 1
- Extension and Version Dependencies
VK_KHR_get_physical_device_properties2or Version 1.1- Contact
- Tobias Hector tobski
Other Extension Metadata
- Last Modified Date
- 2021-10-22
- Contributors
- Tobias Hector, AMD
- Contributors to
VK_EXT_global_priority - Contributors to
VK_EXT_global_priority_query
-
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final intExtendsVkResult.static final StringThe extension name.static final intThe extension specification version.static final intVK_MAX_GLOBAL_PRIORITY_SIZE_KHRstatic final intExtendsVkStructureType.static final intExtendsVkStructureType.static final intExtendsVkStructureType. -
Method Summary
-
Field Details
-
VK_KHR_GLOBAL_PRIORITY_SPEC_VERSION
public static final int VK_KHR_GLOBAL_PRIORITY_SPEC_VERSIONThe extension specification version.- See Also:
-
VK_KHR_GLOBAL_PRIORITY_EXTENSION_NAME
The extension name.- See Also:
-
VK_STRUCTURE_TYPE_DEVICE_QUEUE_GLOBAL_PRIORITY_CREATE_INFO_KHR
public static final int VK_STRUCTURE_TYPE_DEVICE_QUEUE_GLOBAL_PRIORITY_CREATE_INFO_KHRExtendsVkStructureType.Enum values:
- See Also:
-
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_GLOBAL_PRIORITY_QUERY_FEATURES_KHR
public static final int VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_GLOBAL_PRIORITY_QUERY_FEATURES_KHRExtendsVkStructureType.Enum values:
- See Also:
-
VK_STRUCTURE_TYPE_QUEUE_FAMILY_GLOBAL_PRIORITY_PROPERTIES_KHR
public static final int VK_STRUCTURE_TYPE_QUEUE_FAMILY_GLOBAL_PRIORITY_PROPERTIES_KHRExtendsVkStructureType.Enum values:
- See Also:
-
VK_ERROR_NOT_PERMITTED_KHR
public static final int VK_ERROR_NOT_PERMITTED_KHRExtendsVkResult.- See Also:
-
VK_MAX_GLOBAL_PRIORITY_SIZE_KHR
public static final int VK_MAX_GLOBAL_PRIORITY_SIZE_KHRVK_MAX_GLOBAL_PRIORITY_SIZE_KHR- See Also:
-