public class NVDeviceDiagnosticCheckpoints
extends java.lang.Object
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.
VK_NV_device_diagnostic_checkpointsVK_KHR_get_physical_device_properties2| Modifier and Type | Field and Description |
|---|---|
static java.lang.String |
VK_NV_DEVICE_DIAGNOSTIC_CHECKPOINTS_EXTENSION_NAME
The extension name.
|
static int |
VK_NV_DEVICE_DIAGNOSTIC_CHECKPOINTS_SPEC_VERSION
The extension specification version.
|
static int |
VK_STRUCTURE_TYPE_CHECKPOINT_DATA_NV
Extends
VkStructureType. |
static int |
VK_STRUCTURE_TYPE_QUEUE_FAMILY_CHECKPOINT_PROPERTIES_NV
Extends
VkStructureType. |
| Modifier and Type | Method and Description |
|---|---|
static void |
nvkGetQueueCheckpointDataNV(org.lwjgl.vulkan.VkQueue queue,
long pCheckpointDataCount,
long pCheckpointData)
Unsafe version of:
GetQueueCheckpointDataNV |
static void |
vkCmdSetCheckpointNV(org.lwjgl.vulkan.VkCommandBuffer commandBuffer,
long pCheckpointMarker)
insert diagnostic checkpoint in command stream.
|
static void |
vkGetQueueCheckpointDataNV(org.lwjgl.vulkan.VkQueue queue,
int[] pCheckpointDataCount,
VkCheckpointDataNV.Buffer pCheckpointData)
Array version of:
GetQueueCheckpointDataNV |
static void |
vkGetQueueCheckpointDataNV(org.lwjgl.vulkan.VkQueue queue,
java.nio.IntBuffer pCheckpointDataCount,
VkCheckpointDataNV.Buffer pCheckpointData)
retrieve diagnostic checkpoint data.
|
public static final int VK_NV_DEVICE_DIAGNOSTIC_CHECKPOINTS_SPEC_VERSION
public static final java.lang.String VK_NV_DEVICE_DIAGNOSTIC_CHECKPOINTS_EXTENSION_NAME
public static final int VK_STRUCTURE_TYPE_CHECKPOINT_DATA_NV
VkStructureType.
public static final int VK_STRUCTURE_TYPE_QUEUE_FAMILY_CHECKPOINT_PROPERTIES_NV
VkStructureType.
public static void vkCmdSetCheckpointNV(org.lwjgl.vulkan.VkCommandBuffer commandBuffer,
long pCheckpointMarker)
Device diagnostic checkpoints are inserted into the command stream by calling CmdSetCheckpointNV.
void vkCmdSetCheckpointNV(
VkCommandBuffer commandBuffer,
const void* pCheckpointMarker);
commandBuffer must be a valid VkCommandBuffer handlecommandBuffer must be in the recording stateVkCommandPool that commandBuffer was allocated from must support graphics, compute, or transfer operationsVkCommandPool that commandBuffer was allocated from must be externally synchronized| Command Buffer Levels | Render Pass Scope | Supported Queue Types | Pipeline Type |
|---|---|---|---|
| Primary Secondary | Both | Graphics Compute Transfer |
commandBuffer - the command buffer that will receive the markerpCheckpointMarker - an opaque application-provided value that will be associated with the checkpoint.public static void nvkGetQueueCheckpointDataNV(org.lwjgl.vulkan.VkQueue queue,
long pCheckpointDataCount,
long pCheckpointData)
GetQueueCheckpointDataNVpCheckpointDataCount - a pointer to an integer related to the number of checkpoint markers available or queried, as described below.public static void vkGetQueueCheckpointDataNV(org.lwjgl.vulkan.VkQueue queue,
java.nio.IntBuffer pCheckpointDataCount,
@Nullable
VkCheckpointDataNV.Buffer pCheckpointData)
If the device encounters an error during execution, the implementation will return a ERROR_DEVICE_LOST error to the application at a certain point during host execution. When this happens, the application can call GetQueueCheckpointDataNV to retrieve information on the most recent diagnostic checkpoints that were executed by the device.
void vkGetQueueCheckpointDataNV(
VkQueue queue,
uint32_t* pCheckpointDataCount,
VkCheckpointDataNV* pCheckpointData);
If pCheckpointData is NULL, then the number of checkpoint markers available is returned in pCheckpointDataCount.
Otherwise, pCheckpointDataCount must point to a variable set by the user to the number of elements in the pCheckpointData array, and on return the variable is overwritten with the number of structures actually written to pCheckpointData.
If pCheckpointDataCount is less than the number of checkpoint markers available, at most pCheckpointDataCount structures will be written.
queue belongs to must be in the lost statequeue must be a valid VkQueue handlepCheckpointDataCount must be a valid pointer to a uint32_t valuepCheckpointDataCount is not 0, and pCheckpointData is not NULL, pCheckpointData must be a valid pointer to an array of pCheckpointDataCount VkCheckpointDataNV structuresqueue - the VkQueue object 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 - either NULL or a pointer to an array of VkCheckpointDataNV structures.public static void vkGetQueueCheckpointDataNV(org.lwjgl.vulkan.VkQueue queue,
int[] pCheckpointDataCount,
@Nullable
VkCheckpointDataNV.Buffer pCheckpointData)
GetQueueCheckpointDataNVCopyright LWJGL. All Rights Reserved. License terms.