Contact
-
Charles Hansen cshansen
Other Extension Metadata
- Last Modified Date
-
2023-09-25
- Contributors
-
-
Charles Hansen, NVIDIA
-
Liam Middlebrook, NVIDIA
-
Lionel Duc, NVIDIA
-
James Jones, NVIDIA
-
Eric Sullivan, NVIDIA
-
New Enum Constants
-
VK_NV_LOW_LATENCY_2_EXTENSION_NAME
-
VK_NV_LOW_LATENCY_2_SPEC_VERSION
-
Extending VkStructureType:
-
VK_STRUCTURE_TYPE_GET_LATENCY_MARKER_INFO_NV
-
VK_STRUCTURE_TYPE_LATENCY_SLEEP_INFO_NV
-
VK_STRUCTURE_TYPE_LATENCY_SLEEP_MODE_INFO_NV
-
VK_STRUCTURE_TYPE_LATENCY_SUBMISSION_PRESENT_ID_NV
-
VK_STRUCTURE_TYPE_LATENCY_SURFACE_CAPABILITIES_NV
-
VK_STRUCTURE_TYPE_LATENCY_TIMINGS_FRAME_REPORT_NV
-
VK_STRUCTURE_TYPE_OUT_OF_BAND_QUEUE_TYPE_INFO_NV
-
VK_STRUCTURE_TYPE_SET_LATENCY_MARKER_INFO_NV
-
VK_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 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
-
See Also
VkGetLatencyMarkerInfoNV, VkLatencyMarkerNV, VkLatencySleepInfoNV, VkLatencySleepModeInfoNV, VkLatencySubmissionPresentIdNV, VkLatencySurfaceCapabilitiesNV, VkLatencyTimingsFrameReportNV, VkOutOfBandQueueTypeInfoNV, VkOutOfBandQueueTypeNV, VkSetLatencyMarkerInfoNV, VkSwapchainLatencyCreateInfoNV, vkGetLatencyTimingsNV, vkLatencySleepNV, vkQueueNotifyOutOfBandNV, vkSetLatencyMarkerNV, vkSetLatencySleepModeNV
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.