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. Applications should call this function before input sampling, and 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