HORIZON HASKELLDocslts/ghc-9.14.x45dd5372026-10-11Search names, modules, packages, or :: a typeCtrl K

GHC 9.14.1 · lts/ghc-9.14.x · 45dd537 · 2026-10-11

Modulevulkan-3.27GHC2021

Vulkan.Extensions.VK_QCOM_queue_perf_hint

Name

VK_QCOM_queue_perf_hint - device extension

VK_QCOM_queue_perf_hint

Name String

VK_QCOM_queue_perf_hint

Extension Type

Device extension

Registered Extension Number

303

Revision

1

Ratification Status

Not ratified

Extension and Version Dependencies

VK_KHR_get_physical_device_properties2

or

Vulkan Version 1.1

Contact
Extension Proposal

VK_QCOM_queue_perf_hint

Other Extension Metadata

Last Modified Date

2026-02-26

IP Status

No known IP claims.

Interactions and External Dependencies
  • Interacts with VK_KHR_internally_synchronized_queues

Contributors
  • Matthew Netsch, Qualcomm Technologies, Inc

Description

This extension exposes power constraints to the application, allowing it to provide hints for influencing the device’s clock frequency.

These hints are Queue state and are persistent across the life of the queue until the app updates or removes the constraint. The kernel combines the constraints across the active queues from all processes to determine the actual clock frequency levels.

New Commands

New Structures

New Enums

New Enum Constants

Issues

None.

Version History

  • Revision 1, 2026-02-26 (Matthew Netsch)

See Also

No cross-references are available

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.

  • 6 types
  • 1 value
  • Packagevulkan-3.27
  • Exports13
  • LanguageGHC2021
  • LicenceBSD-3-Clause
  • SourceVK_QCOM_queue_perf_hint.hs
valuequeueSetPerfHintQCOM
  1. :: MonadIO io
  2. => Queue

    queue is the queue to set the performance hint on.

  3. -> PerfHintInfoQCOM

    pPerfHintInfo is a pointer to a PerfHintInfoQCOM structure, describing the performance hint to set.

  4. -> io ()
#

vkQueueSetPerfHintQCOM - Set a performance hint on a queue

Valid Usage

Valid Usage (Implicit)

  • queue must be a valid Queue handle

Host Synchronization

Command Properties

'

Return Codes

Success
Failure

See Also

VK_QCOM_queue_perf_hint, PerfHintInfoQCOM, Queue

datadata PerfHintInfoQCOM
#

VkPerfHintInfoQCOM - Structure specifying the parameters used for setting a performance hint on a queue

Description

The device has two global frequency constraints, fmin and fmax, that can be influenced by the PERF_HINT_TYPE_FREQUENCY_MIN_QCOM, PERF_HINT_TYPE_FREQUENCY_MAX_QCOM, and PERF_HINT_TYPE_FREQUENCY_SCALED_QCOM performance hints. These constraints determine the range of clock frequencies that the platform performance algorithms may select from. If no constraints are set, fmin and fmax are set to the minimum and maximum frequencies the device can support, Fmin and Fmax respectively.

The fmin constraint applied by PERF_HINT_TYPE_FREQUENCY_SCALED_QCOM is calculated with the following:

  • (f_{min} = lfloorfrac{scale}{100} times F_{max}rfloor)

The implementation rounds fmin down to the next available lower frequency the device supports, clamped to Fmin.

The global frequency constraints are determined by combining the performance hints from all of the device’s active queues of all processes on the host. Performance hints that influence device frequency are ranked, where a higher ranked hint supersedes all lower ranked hints. These are listed in order of highest rank to lowest:

This means that PERF_HINT_TYPE_FREQUENCY_MIN_QCOM only takes effect if all of the device’s other active queues running on the host also have the PERF_HINT_TYPE_FREQUENCY_MIN_QCOM hint applied.

If any queue is active that never had a performance hint applied and therefore is in the PERF_HINT_TYPE_DEFAULT_QCOM state, it will supersede in setting the constraints over PERF_HINT_TYPE_FREQUENCY_MIN_QCOM. This is necessary to avoid negatively impacting performance for normal queues while a low power queue is active.

Valid Usage

  • scale must be less than or equal to 100

Valid Usage (Implicit)

See Also

VK_QCOM_queue_perf_hint, PerfHintTypeQCOM, StructureType, queueSetPerfHintQCOM

Constructors

Instances6Eq, Show, Storable, FromCStruct, ToCStruct, Zero

VkPhysicalDeviceQueuePerfHintFeaturesQCOM - Structure describing queue perf hint features that can be supported by an implementation

Members

This structure describes the following features:

Description

If the PhysicalDeviceQueuePerfHintFeaturesQCOM structure is included in the pNext chain of the PhysicalDeviceFeatures2 structure passed to getPhysicalDeviceFeatures2, it is filled in to indicate whether each corresponding feature is supported. If the application wishes to use a Device with any features described by PhysicalDeviceQueuePerfHintFeaturesQCOM, it must add an instance of the structure, with the desired feature members set to TRUE, to the pNext chain of DeviceCreateInfo when creating the Device.

Structure Chaining

Extends the structures

See Also

VK_QCOM_queue_perf_hint, Bool32, StructureType

Constructors

Instances6Eq, Show, Storable, FromCStruct, ToCStruct, Zero

VkPhysicalDeviceQueuePerfHintPropertiesQCOM - Structure describing queue perf hint properties for a physical device

Members

The members of the PhysicalDeviceQueuePerfHintPropertiesQCOM structure describe the following:

Description

If the queuePerfHint feature is supported by physicalDevice, supportedQueues must return at least one supported queue type.

If the PhysicalDeviceQueuePerfHintPropertiesQCOM structure is included in the pNext chain of the PhysicalDeviceProperties2 structure passed to getPhysicalDeviceProperties2, it is filled in with each corresponding implementation-dependent property.

Structure Chaining

Extends the structure

See Also

VK_QCOM_queue_perf_hint, QueueFlags, StructureType

Constructors

Instances6Eq, Show, Storable, FromCStruct, ToCStruct, Zero
newtypenewtype PerfHintTypeQCOM
#

VkPerfHintTypeQCOM - Specifies the performance hint type

Description

See Also

VK_QCOM_queue_perf_hint, PerfHintInfoQCOM

Instances6Eq, Ord, Read, Show, Storable, Zero