Deprecation State
- 
Promoted to VK_KHR_global_priority extension - 
Which in turn was promoted to Vulkan 1.4 
 
- 
Contact
- 
Andres Rodriguez [GitHub]lostgoat 
Other Extension Metadata
- Last Modified Date
- 
2017-10-06 
- IP Status
- 
No known IP claims. 
- Contributors
- 
- 
Andres Rodriguez, Valve 
- 
Pierre-Loup Griffais, Valve 
- 
Dan Ginsburg, Valve 
- 
Mitch Singer, AMD 
 
- 
Description
In Vulkan, users can specify device-scope queue priorities.
In some cases it may be useful to extend this concept to a system-wide
scope.
This extension provides a mechanism for callers to set their system-wide
priority.
The default queue priority is VK_QUEUE_GLOBAL_PRIORITY_MEDIUM_EXT.
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 (VK_QUEUE_GLOBAL_PRIORITY_MEDIUM_EXT) if
the caller does not have sufficient privileges.
In this scenario VK_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 VK_ERROR_INITIALIZATION_FAILED is returned.
New Enum Constants
- 
VK_EXT_GLOBAL_PRIORITY_EXTENSION_NAME
- 
VK_EXT_GLOBAL_PRIORITY_SPEC_VERSION
- 
Extending VkQueueGlobalPriority: - 
VK_QUEUE_GLOBAL_PRIORITY_HIGH_EXT
- 
VK_QUEUE_GLOBAL_PRIORITY_LOW_EXT
- 
VK_QUEUE_GLOBAL_PRIORITY_MEDIUM_EXT
- 
VK_QUEUE_GLOBAL_PRIORITY_REALTIME_EXT
 
- 
- 
Extending VkResult: - 
VK_ERROR_NOT_PERMITTED_EXT
 
- 
- 
Extending VkStructureType: - 
VK_STRUCTURE_TYPE_DEVICE_QUEUE_GLOBAL_PRIORITY_CREATE_INFO_EXT
 
- 
Version History
- 
Revision 2, 2017-11-03 (Andres Rodriguez) - 
Fixed VkQueueGlobalPriorityEXT missing _EXT suffix 
 
- 
- 
Revision 1, 2017-10-06 (Andres Rodriguez) - 
First version. 
 
- 
Document Notes
For more information, see the Vulkan Specification
This page is a generated document. Fixes and changes should be made to the generator scripts, not directly.