mirror of
https://github.com/status-im/Vulkan-Docs.git
synced 2025-01-12 15:04:10 +00:00
64fa8ef4df
* Bump API patch number and header version number to 66 for this update. Github Issues: * Clarified how and when ename:VK_ERROR_TOO_MANY_OBJECTS is generated in flink:vkAllocate Memory, and remove incorrect valid usage statement about exceeding the API limit (public issue 356). * Minor clarification of the description of flink:vkUpdateDescriptorSetWithTemplateKHR::pname:descriptorUpdateTemplate (public issue 564). * Minor fixes for flink:vkCmdSetViewportWScalingNV (public pull request 588). * Fix random name markup issues (public pull request 603). * Fix code:BuiltIn decoration typo in the <<fxvertex-attrib, Vertex Attributes>> section (public pull request 606). * Fix synchronization language following the definition of flink:vkAcquireNextImageKHR (public issue 607). * Restore descriptions of several commands and structures missing from the generated spec due to a mistyped asciidoctor conditional (public issue 612). * Fix 1.0.41 changelog to refer to public issues 403/404 (public issue 618). Internal Issues: * Refactor valid usage statements with internal conditionals in `copies.txt`, `pipelines.txt`, `renderpass.txt`, and `resources.txt` so each branch of the conditional appears as a standalone statement which can contain a separate VUID. This should have no impact on the generated specs, but is necessary given the present state of the VU extractor and the validation layer code that consumes them (internal issue 1043). * Fix VkQueueGlobalPriorityEXT enum values missing _EXT suffix (internal issue 1045). * Clarified initial ownership of resources bound to shared memory objects, (internal issue 1068). * Fix duplicated valid usage ID tag for flink:vkCmdCopyImage, and make the required layouts include ename:VK_IMAGE_LAYOUT_TRANSFER_SRC_OPTIONAL in both cases (internal issue 1084). Other Issues: * Remove the noise functions from GLSL for SPIR-V for Vulkan in the `GL_KHR_vulkan_glsl.txt` extension. New Extensions: * `VK_EXT_external_memory_host` * `VK_EXT_external_memory_dma_buf` * `VK_EXT_queue_family_foreign`
76 lines
2.1 KiB
Plaintext
76 lines
2.1 KiB
Plaintext
include::meta/VK_EXT_global_priority.txt[]
|
|
|
|
*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
|
|
|
|
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 caller's to set their system-wide
|
|
priority.
|
|
The default queue priority is ename:VK_QUEUE_GLOBAL_PRIORITY_MEDIUM_EXT.
|
|
|
|
The driver implementation will attempt to skew hardware resource allocation
|
|
in favour 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 predence over the
|
|
per-process queue priority
|
|
(sname:VkDeviceQueueCreateInfo::pname: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 (ename:VK_QUEUE_GLOBAL_PRIORITY_MEDIUM_EXT) if
|
|
the caller does not have sufficient privileges.
|
|
In this scenario ename: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 ename:VK_ERROR_INITIALIZATION_FAILED is returned.
|
|
|
|
=== New Object Types
|
|
|
|
None.
|
|
|
|
=== New Enum Constants
|
|
|
|
* Extending elink:VkStructureType:
|
|
** ename:VK_STRUCTURE_TYPE_DEVICE_QUEUE_GLOBAL_PRIORITY_CREATE_INFO_EXT
|
|
|
|
* Extending elink:VkResult:
|
|
** ename:VK_ERROR_NOT_PERMITTED_EXT
|
|
|
|
=== New Enums
|
|
|
|
* elink:VkQueueGlobalPriorityEXT
|
|
|
|
=== New Structures
|
|
|
|
* slink:VkDeviceQueueGlobalPriorityCreateInfoEXT
|
|
|
|
=== New Functions
|
|
|
|
None.
|
|
|
|
=== Issues
|
|
|
|
None.
|
|
|
|
=== Version History
|
|
|
|
* Revision 2, 2017-11-03 (Andres Rodriguez)
|
|
- Fixed VkQueueGlobalPriorityEXT missing _EXT suffix
|
|
|
|
* Revision 1, 2017-10-06 (Andres Rodriguez)
|
|
- First version.
|