Class NVDeviceDiagnosticCheckpoints
- java.lang.Object
-
- org.lwjgl.vulkan.NVDeviceDiagnosticCheckpoints
-
public class NVDeviceDiagnosticCheckpoints extends java.lang.ObjectThis extension allows applications to insert markers in the command stream and associate them with custom data.If a device lost error occurs, the application may then query the implementation for the last markers to cross specific implementation-defined pipeline stages, in order to narrow down which commands were executing at the time and might have caused the failure.
- Name String
VK_NV_device_diagnostic_checkpoints- Extension Type
- Device extension
- Registered Extension Number
- 207
- Revision
- 2
- Extension and Version Dependencies
- Requires Vulkan 1.0
- Requires
VK_KHR_get_physical_device_properties2
- Contact
- Nuno Subtil nsubtil
- Last Modified Date
- 2018-07-16
- Contributors
- Oleg Kuznetsov, NVIDIA
- Alex Dunn, NVIDIA
- Jeff Bolz, NVIDIA
- Eric Werness, NVIDIA
- Daniel Koch, NVIDIA
-
-
Field Summary
Fields Modifier and Type Field Description static java.lang.StringVK_NV_DEVICE_DIAGNOSTIC_CHECKPOINTS_EXTENSION_NAMEThe extension name.static intVK_NV_DEVICE_DIAGNOSTIC_CHECKPOINTS_SPEC_VERSIONThe extension specification version.static intVK_STRUCTURE_TYPE_CHECKPOINT_DATA_NV
VK_STRUCTURE_TYPE_QUEUE_FAMILY_CHECKPOINT_PROPERTIES_NVExtendsVkStructureType.
-
Method Summary
All Methods Static Methods Concrete Methods Modifier and Type Method Description static voidnvkGetQueueCheckpointDataNV(VkQueue queue, long pCheckpointDataCount, long pCheckpointData)Unsafe version of:GetQueueCheckpointDataNVstatic voidvkCmdSetCheckpointNV(VkCommandBuffer commandBuffer, long pCheckpointMarker)insert diagnostic checkpoint in command stream.static voidvkGetQueueCheckpointDataNV(VkQueue queue, int[] pCheckpointDataCount, VkCheckpointDataNV.Buffer pCheckpointData)Array version of:GetQueueCheckpointDataNVstatic voidvkGetQueueCheckpointDataNV(VkQueue queue, java.nio.IntBuffer pCheckpointDataCount, VkCheckpointDataNV.Buffer pCheckpointData)retrieve diagnostic checkpoint data.
-
-
-
Field Detail
-
VK_NV_DEVICE_DIAGNOSTIC_CHECKPOINTS_SPEC_VERSION
The extension specification version.
-
VK_NV_DEVICE_DIAGNOSTIC_CHECKPOINTS_EXTENSION_NAME
The extension name.
-
-
Method Detail
-
vkCmdSetCheckpointNV
public static void vkCmdSetCheckpointNV(VkCommandBuffer commandBuffer, long pCheckpointMarker)
insert diagnostic checkpoint in command stream.C Specification
Device diagnostic checkpoints are inserted into the command stream by calling
CmdSetCheckpointNV.void vkCmdSetCheckpointNV( VkCommandBuffer commandBuffer, const void* pCheckpointMarker);Valid Usage (Implicit)
commandBuffermust be a validVkCommandBufferhandlecommandBuffermust be in the recording state- The
VkCommandPoolthatcommandBufferwas allocated from must support graphics, compute, or transfer operations
Host Synchronization
- Host access to the
VkCommandPoolthatcommandBufferwas allocated from must be externally synchronized
Command Properties
Command Buffer Levels Render Pass Scope Supported Queue Types Pipeline Type Primary Secondary Both Graphics Compute Transfer - Parameters:
commandBuffer- the command buffer that will receive the markerpCheckpointMarker- an opaque application-provided value that will be associated with the checkpoint.
-
nvkGetQueueCheckpointDataNV
public static void nvkGetQueueCheckpointDataNV(VkQueue queue, long pCheckpointDataCount, long pCheckpointData)
Unsafe version of:GetQueueCheckpointDataNV- Parameters:
pCheckpointDataCount- a pointer to an integer related to the number of checkpoint markers available or queried, as described below.
-
vkGetQueueCheckpointDataNV
public static void vkGetQueueCheckpointDataNV(VkQueue queue, java.nio.IntBuffer pCheckpointDataCount, @Nullable VkCheckpointDataNV.Buffer pCheckpointData)
retrieve diagnostic checkpoint data.C Specification
If the device encounters an error during execution, the implementation will return a
ERROR_DEVICE_LOSTerror to the application at a certain point during host execution. When this happens, the application can callGetQueueCheckpointDataNVto retrieve information on the most recent diagnostic checkpoints that were executed by the device.void vkGetQueueCheckpointDataNV( VkQueue queue, uint32_t* pCheckpointDataCount, VkCheckpointDataNV* pCheckpointData);Description
If
pCheckpointDataisNULL, then the number of checkpoint markers available is returned inpCheckpointDataCount.Otherwise,
pCheckpointDataCountmust point to a variable set by the user to the number of elements in thepCheckpointDataarray, and on return the variable is overwritten with the number of structures actually written topCheckpointData.If
pCheckpointDataCountis less than the number of checkpoint markers available, at mostpCheckpointDataCountstructures will be written.Valid Usage
- The device that
queuebelongs to must be in the lost state
Valid Usage (Implicit)
queuemust be a validVkQueuehandlepCheckpointDataCountmust be a valid pointer to auint32_tvalue- If the value referenced by
pCheckpointDataCountis not 0, andpCheckpointDatais notNULL,pCheckpointDatamust be a valid pointer to an array ofpCheckpointDataCountVkCheckpointDataNVstructures
See Also
- Parameters:
queue- theVkQueueobject the caller would like to retrieve checkpoint data forpCheckpointDataCount- a pointer to an integer related to the number of checkpoint markers available or queried, as described below.pCheckpointData- eitherNULLor a pointer to an array ofVkCheckpointDataNVstructures.
- The device that
-
vkGetQueueCheckpointDataNV
public static void vkGetQueueCheckpointDataNV(VkQueue queue, int[] pCheckpointDataCount, @Nullable VkCheckpointDataNV.Buffer pCheckpointData)
Array version of:GetQueueCheckpointDataNV
-
-