C Specification
The VkPerfHintInfoQCOM structure is defined as:
// Provided by VK_QCOM_queue_perf_hint
typedef struct VkPerfHintInfoQCOM {
VkStructureType sType;
void* pNext;
VkPerfHintTypeQCOM type;
uint32_t scale;
} VkPerfHintInfoQCOM;
Members
-
sTypeis a VkStructureType value identifying this structure. -
pNextisNULLor a pointer to a structure extending this structure. -
typeis a VkPerfHintTypeQCOM value indicating the type of performance hint to apply. -
scaleis a normalized fixed-point scale factor.
Description
The device has two global frequency constraints, fmin and fmax, that
can be influenced by the VK_PERF_HINT_TYPE_FREQUENCY_MIN_QCOM,
VK_PERF_HINT_TYPE_FREQUENCY_MAX_QCOM, and
VK_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
VK_PERF_HINT_TYPE_FREQUENCY_SCALED_QCOM is calculated with the
following:
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:
-
VK_PERF_HINT_TYPE_FREQUENCY_SCALED_QCOM and
scaleequal to100 -
VK_PERF_HINT_TYPE_FREQUENCY_SCALED_QCOM and
scaleequal to99 -
VK_PERF_HINT_TYPE_FREQUENCY_SCALED_QCOM and
scaleequal to98 -
…
-
VK_PERF_HINT_TYPE_FREQUENCY_SCALED_QCOM and
scaleequal to0
|
Note
|
This means that VK_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 VK_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 VK_PERF_HINT_TYPE_DEFAULT_QCOM state, it will supersede in setting the constraints over VK_PERF_HINT_TYPE_FREQUENCY_MIN_QCOM. This is necessary to avoid negatively impacting performance for normal queues while a low power queue is active. |
Document Notes
For more information, see the Vulkan Specification.
This page is extracted from the Vulkan Specification. Fixes and changes should be made to the Specification, not directly.