Function Prototype

vkLatencySleepNV

Trigger low latency mode Sleep

To provide the synchronization primitive used to delay host CPU work for lower latency rendering, call:

VkResult vkLatencySleepNV(
    VkDevice device,
    VkSwapchainKHR swapchain,
    const VkLatencySleepInfoNV* pSleepInfo);
  • device is the device associated with swapchain.
  • swapchain is the swapchain to delay associated CPU work based on VkLatencySubmissionPresentIdNV submissions.
  • pSleepInfo is a pointer to a VkLatencySleepInfoNV structure specifying the parameters of the latency sleep.

vkLatencySleepNV returns immediately. Applications should use vkWaitSemaphores with pSleepInfo→signalSemaphore to delay host CPU work. CPU work refers to application work done before presenting which includes but is not limited to: input sampling, simulation, command buffer recording, command buffer submission, and present submission. It is recommended to call this function before input sampling. When using this function, it should be called exactly once between presents.

Valid Usage (Implicit)

VUID-vkLatencySleepNV-pSleepInfo-parameter

pSleepInfo must be a valid pointer to a valid VkLatencySleepInfoNV structure

VUID-vkLatencySleepNV-swapchain-parent

swapchain must have been created, allocated, or retrieved from device