VK_NV_low_latency2
Other Extension Metadata
Last Modified Date
2026-08-12
Contributors
- Charles Hansen, NVIDIA
- Liam Middlebrook, NVIDIA
- Lionel Duc, NVIDIA
- James Jones, NVIDIA
- Eric Sullivan, NVIDIA
- Will Campbell, NVIDIA
New Commands
- vkGetLatencyTimingsNV
- vkLatencySleepNV
- vkQueueNotifyOutOfBandNV
- vkSetLatencyMarkerNV
- vkSetLatencySleepModeNV
New Structures
- VkGetLatencyMarkerInfoNV
- VkLatencySleepInfoNV
- VkLatencySleepModeInfoNV
- VkLatencyTimingsFrameReportNV
- VkOutOfBandQueueTypeInfoNV
- VkSetLatencyMarkerInfoNV
- Extending VkSubmitInfo, VkSubmitInfo2:
- Extending VkSurfaceCapabilities2KHR:
- Extending VkSwapchainCreateInfoKHR:
New Enums
New Enum Constants
VK_NV_LOW_LATENCY_2_EXTENSION_NAMEVK_NV_LOW_LATENCY_2_SPEC_VERSION- Extending VkStructureType:
VK_STRUCTURE_TYPE_GET_LATENCY_MARKER_INFO_NVVK_STRUCTURE_TYPE_LATENCY_SLEEP_INFO_NVVK_STRUCTURE_TYPE_LATENCY_SLEEP_MODE_INFO_NVVK_STRUCTURE_TYPE_LATENCY_SUBMISSION_PRESENT_ID_NVVK_STRUCTURE_TYPE_LATENCY_SURFACE_CAPABILITIES_NVVK_STRUCTURE_TYPE_LATENCY_TIMINGS_FRAME_REPORT_NVVK_STRUCTURE_TYPE_OUT_OF_BAND_QUEUE_TYPE_INFO_NVVK_STRUCTURE_TYPE_SET_LATENCY_MARKER_INFO_NVVK_STRUCTURE_TYPE_SWAPCHAIN_LATENCY_CREATE_INFO_NV
Description
This extension gives applications timing suggestions on when to start the recording of new frames to reduce the latency between input sampling and frame presentation. Applications can accomplish this through the extension by calling vkSetLatencySleepModeNV to allow the driver to pace a given swapchain, then calling vkLatencySleepNV before input sampling to delay the start of the CPU side work. Additional methods and structures are provided to give insight into the latency pipeline of an application through the latency markers. VK_NV_low_latency provides legacy support for applications that make use of the NVIDIA Reflex SDK whereas new implementations should use the VK_NV_low_latency2 extension.
Issues
1) How does Low Latency 2 work with applications that utilize device groups?
Low Latency 2 does not support device groups.
Version History
- Revision 3, 2026-04-20 (Will Campbell)
- Clarify frame attribution behavior. The details clarified in this revision describe behavior consistent with implementations advertising older revisions of this extension, with one exception: explicit submission attribution via VkLatencySubmissionPresentIdNV is only respected by implementations advertising revision 3 or higher. Applications should verify that the implementation advertises at least revision 3 before relying on this behavior.
- Revision 2, 2023-11-15 (Charles Hansen)
- Update vkGetLatencyTimingsNV. This is a breaking API change which brings behavior in line with other array querying commands. More background can be found in https://github.com/KhronosGroup/Vulkan-Docs/issues/2269
- Revision 1, 2023-09-25 (Charles Hansen)
- Internal revisions