C Specification
The VkLatencyTimingsFrameReportNV structure describes latency data returned by vkGetLatencyTimingsNV
// Provided by VK_NV_low_latency2
typedef struct VkLatencyTimingsFrameReportNV {
VkStructureType sType;
const void* pNext;
uint64_t presentID;
uint64_t inputSampleTimeUs;
uint64_t simStartTimeUs;
uint64_t simEndTimeUs;
uint64_t renderSubmitStartTimeUs;
uint64_t renderSubmitEndTimeUs;
uint64_t presentStartTimeUs;
uint64_t presentEndTimeUs;
uint64_t driverStartTimeUs;
uint64_t driverEndTimeUs;
uint64_t osRenderQueueStartTimeUs;
uint64_t osRenderQueueEndTimeUs;
uint64_t gpuRenderStartTimeUs;
uint64_t gpuRenderEndTimeUs;
} VkLatencyTimingsFrameReportNV;
Members
The members of the VkLatencyTimingsFrameReportNV structure describe the following:
Description
-
presentId
is the application provided value that is used to associate the timestamp with avkQueuePresentKHR
command using VkPresentIdKHR::pPresentIds
for a given present. -
simStartTimeUs
is the timestamp written whenvkSetLatencyMarkerNV
is called with theVkLatencyMarkerNV
enumVK_LATENCY_MARKER_SIMULATION_START_NV
. -
simEndTimeUs
is the timestamp written whenvkSetLatencyMarkerNV
is called with theVkLatencyMarkerNV
enumVK_LATENCY_MARKER_SIMULATION_END_NV
-
renderStartTimeUs
is the timestamp written whenvkSetLatencyMarkerNV
is called with theVkLatencyMarkerNV
enumVK_LATENCY_MARKER_RENDERSUBMIT_START_NV
. -
renderEndTimeUs
is the timestamp written whenvkSetLatencyMarkerNV
is called with theVkLatencyMarkerNV
enumVK_LATENCY_MARKER_RENDERSUBMIT_END_NV
. -
presentStartTimeUs
is the timestamp written whenvkSetLatencyMarkerNV
is called with theVkLatencyMarkerNV
enumVK_LATENCY_MARKER_PRESENT_START_NV
. -
presentEndTimeUs
is the timestamp written whenvkSetLatencyMarkerNV
is called with theVkLatencyMarkerNV
enumVK_LATENCY_MARKER_PRESENT_END_NV
. -
driverStartTimeUs
is the timestamp written when the firstvkQueueSubmit
for the frame is called. -
driverEndTimeUs
is the timestamp written when the finalvkQueueSubmit
hands off from the Vulkan Driver. -
osRenderQueueStartTimeUs
is the timestamp written when the finalvkQueueSubmit
hands off from the Vulkan Driver. -
osRenderQueueEndTimeUs
is the timestamp written when the first submission reaches the GPU. -
gpuRenderStartTimeUs
is the timestamp written when the first submission reaches the GPU. -
gpuRenderEndTimeUs
is the timestamp written when the final submission finishes on the GPU for the frame.
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.