Top Description Fields Constructors Methods
org.lwjgl.vulkan

public final Class EXTGlobalPriority

extends Object
Class Inheritance

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 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 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.

VK_EXT_global_priority
Name String
VK_EXT_global_priority
Extension Type
Device extension
Registered Extension Number
175
Revision
2
Deprecation state
Contact
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

Field Summary

Modifier and TypeField and Description
public static final int
VK_ERROR_NOT_PERMITTED_EXT

Extends VkResult.

public static final String
public static final int
VK_EXT_GLOBAL_PRIORITY_SPEC_VERSION

The extension specification version.

public static final int
VK_QUEUE_GLOBAL_PRIORITY_HIGH_EXT

VkQueueGlobalPriorityKHR - Values specifying a system-wide queue priority Description

Priority values are sorted in ascending order.

public static final int
VK_QUEUE_GLOBAL_PRIORITY_HIGH_KHR

VkQueueGlobalPriorityKHR - Values specifying a system-wide queue priority Description

Priority values are sorted in ascending order.

public static final int
VK_QUEUE_GLOBAL_PRIORITY_LOW_EXT

VkQueueGlobalPriorityKHR - Values specifying a system-wide queue priority Description

Priority values are sorted in ascending order.

public static final int
VK_QUEUE_GLOBAL_PRIORITY_LOW_KHR

VkQueueGlobalPriorityKHR - Values specifying a system-wide queue priority Description

Priority values are sorted in ascending order.

public static final int
VK_QUEUE_GLOBAL_PRIORITY_MEDIUM_EXT

VkQueueGlobalPriorityKHR - Values specifying a system-wide queue priority Description

Priority values are sorted in ascending order.

public static final int
VK_QUEUE_GLOBAL_PRIORITY_MEDIUM_KHR

VkQueueGlobalPriorityKHR - Values specifying a system-wide queue priority Description

Priority values are sorted in ascending order.

public static final int
VK_QUEUE_GLOBAL_PRIORITY_REALTIME_EXT

VkQueueGlobalPriorityKHR - Values specifying a system-wide queue priority Description

Priority values are sorted in ascending order.

public static final int
VK_QUEUE_GLOBAL_PRIORITY_REALTIME_KHR

VkQueueGlobalPriorityKHR - Values specifying a system-wide queue priority Description

Priority values are sorted in ascending order.

public static final int

Constructor Summary

AccessConstructor and Description
private

Method Summary

Inherited from java.lang.Object:
cloneequalsfinalizegetClasshashCodenotifynotifyAlltoStringwaitwaitwait

Field Detail

VK_ERROR_NOT_PERMITTED_EXTback to summary
public static final int VK_ERROR_NOT_PERMITTED_EXT

Extends VkResult.

VK_EXT_GLOBAL_PRIORITY_EXTENSION_NAMEback to summary
public static final String VK_EXT_GLOBAL_PRIORITY_EXTENSION_NAME

The extension name.

VK_EXT_GLOBAL_PRIORITY_SPEC_VERSIONback to summary
public static final int VK_EXT_GLOBAL_PRIORITY_SPEC_VERSION

The extension specification version.

VK_QUEUE_GLOBAL_PRIORITY_HIGH_EXTback to summary
public static final int VK_QUEUE_GLOBAL_PRIORITY_HIGH_EXT

VkQueueGlobalPriorityKHR - Values specifying a system-wide queue priority

Description

Priority values are sorted in ascending order. A comparison operation on the enum values can be used to determine the priority order.

See Also

VkDeviceQueueGlobalPriorityCreateInfoKHR, VkQueueFamilyGlobalPriorityPropertiesKHR

Enum values:
VK_QUEUE_GLOBAL_PRIORITY_HIGH_KHRback to summary
public static final int VK_QUEUE_GLOBAL_PRIORITY_HIGH_KHR

VkQueueGlobalPriorityKHR - Values specifying a system-wide queue priority

Description

Priority values are sorted in ascending order. A comparison operation on the enum values can be used to determine the priority order.

See Also

VkDeviceQueueGlobalPriorityCreateInfoKHR, VkQueueFamilyGlobalPriorityPropertiesKHR

Enum values:
VK_QUEUE_GLOBAL_PRIORITY_LOW_EXTback to summary
public static final int VK_QUEUE_GLOBAL_PRIORITY_LOW_EXT

VkQueueGlobalPriorityKHR - Values specifying a system-wide queue priority

Description

Priority values are sorted in ascending order. A comparison operation on the enum values can be used to determine the priority order.

See Also

VkDeviceQueueGlobalPriorityCreateInfoKHR, VkQueueFamilyGlobalPriorityPropertiesKHR

Enum values:
VK_QUEUE_GLOBAL_PRIORITY_LOW_KHRback to summary
public static final int VK_QUEUE_GLOBAL_PRIORITY_LOW_KHR

VkQueueGlobalPriorityKHR - Values specifying a system-wide queue priority

Description

Priority values are sorted in ascending order. A comparison operation on the enum values can be used to determine the priority order.

See Also

VkDeviceQueueGlobalPriorityCreateInfoKHR, VkQueueFamilyGlobalPriorityPropertiesKHR

Enum values:
VK_QUEUE_GLOBAL_PRIORITY_MEDIUM_EXTback to summary
public static final int VK_QUEUE_GLOBAL_PRIORITY_MEDIUM_EXT

VkQueueGlobalPriorityKHR - Values specifying a system-wide queue priority

Description

Priority values are sorted in ascending order. A comparison operation on the enum values can be used to determine the priority order.

See Also

VkDeviceQueueGlobalPriorityCreateInfoKHR, VkQueueFamilyGlobalPriorityPropertiesKHR

Enum values:
VK_QUEUE_GLOBAL_PRIORITY_MEDIUM_KHRback to summary
public static final int VK_QUEUE_GLOBAL_PRIORITY_MEDIUM_KHR

VkQueueGlobalPriorityKHR - Values specifying a system-wide queue priority

Description

Priority values are sorted in ascending order. A comparison operation on the enum values can be used to determine the priority order.

See Also

VkDeviceQueueGlobalPriorityCreateInfoKHR, VkQueueFamilyGlobalPriorityPropertiesKHR

Enum values:
VK_QUEUE_GLOBAL_PRIORITY_REALTIME_EXTback to summary
public static final int VK_QUEUE_GLOBAL_PRIORITY_REALTIME_EXT

VkQueueGlobalPriorityKHR - Values specifying a system-wide queue priority

Description

Priority values are sorted in ascending order. A comparison operation on the enum values can be used to determine the priority order.

See Also

VkDeviceQueueGlobalPriorityCreateInfoKHR, VkQueueFamilyGlobalPriorityPropertiesKHR

Enum values:
VK_QUEUE_GLOBAL_PRIORITY_REALTIME_KHRback to summary
public static final int VK_QUEUE_GLOBAL_PRIORITY_REALTIME_KHR

VkQueueGlobalPriorityKHR - Values specifying a system-wide queue priority

Description

Priority values are sorted in ascending order. A comparison operation on the enum values can be used to determine the priority order.

See Also

VkDeviceQueueGlobalPriorityCreateInfoKHR, VkQueueFamilyGlobalPriorityPropertiesKHR

Enum values:
VK_STRUCTURE_TYPE_DEVICE_QUEUE_GLOBAL_PRIORITY_CREATE_INFO_EXTback to summary
public static final int VK_STRUCTURE_TYPE_DEVICE_QUEUE_GLOBAL_PRIORITY_CREATE_INFO_EXT

Extends VkStructureType.

Constructor Detail

EXTGlobalPriorityback to summary
private EXTGlobalPriority()