public class INTELPerformanceQuery
extends java.lang.Object
Such a library is available at : https://github.com/intel/metrics-discovery
Performance analysis tools such as GPA (https://software.intel.com/en-us/gpa) make use of this extension and the metrics-discovery library to present the data in a human readable way.
// A previously created device
VkDevice device;
// A queue from from device
VkQueue queue;
VkInitializePerformanceApiInfoINTEL performanceApiInfoIntel = {
VK_STRUCTURE_TYPE_INITIALIZE_PERFORMANCE_API_INFO_INTEL,
NULL,
NULL
};
vkInitializePerformanceApiINTEL(
device,
&performanceApiInfoIntel);
VkQueryPoolCreateInfoINTEL queryPoolIntel = {
VK_STRUCTURE_TYPE_QUERY_POOL_CREATE_INFO_INTEL,
NULL,
VK_QUERY_POOL_SAMPLING_MODE_MANUAL_INTEL,
};
VkQueryPoolCreateInfo queryPoolCreateInfo = {
VK_STRUCTURE_TYPE_QUERY_POOL_CREATE_INFO,
&queryPoolIntel,
0,
VK_QUERY_TYPE_PERFORMANCE_QUERY_INTEL,
1,
0
};
VkQueryPool queryPool;
VkResult result = vkCreateQueryPool(
device,
&queryPoolCreateInfo,
NULL,
&queryPool);
assert(VK_SUCCESS == result);
// A command buffer we want to record counters on
VkCommandBuffer commandBuffer;
VkCommandBufferBeginInfo commandBufferBeginInfo = {
VK_STRUCTURE_TYPE_COMMAND_BUFFER_BEGIN_INFO,
NULL,
VK_COMMAND_BUFFER_USAGE_ONE_TIME_SUBMIT_BIT,
NULL
};
result = vkBeginCommandBuffer(commandBuffer, &commandBufferBeginInfo);
assert(VK_SUCCESS == result);
vkCmdResetQueryPool(
commandBuffer,
queryPool,
0,
1);
vkCmdBeginQuery(
commandBuffer,
queryPool,
0,
0);
// Perform the commands you want to get performance information on
// ...
// Perform a barrier to ensure all previous commands were complete before
// ending the query
vkCmdPipelineBarrier(commandBuffer,
VK_PIPELINE_STAGE_BOTTOM_OF_PIPE_BIT,
VK_PIPELINE_STAGE_BOTTOM_OF_PIPE_BIT,
0,
0,
NULL,
0,
NULL,
0,
NULL);
vkCmdEndQuery(
commandBuffer,
queryPool,
0);
result = vkEndCommandBuffer(commandBuffer);
assert(VK_SUCCESS == result);
VkPerformanceConfigurationAcquireInfoINTEL performanceConfigurationAcquireInfo = {
VK_STRUCTURE_TYPE_PERFORMANCE_CONFIGURATION_ACQUIRE_INFO_INTEL,
NULL,
VK_PERFORMANCE_CONFIGURATION_TYPE_COMMAND_QUEUE_METRICS_DISCOVERY_ACTIVATED_INTEL
};
VkPerformanceConfigurationINTEL performanceConfigurationIntel;
result = vkAcquirePerformanceConfigurationINTEL(
device,
&performanceConfigurationAcquireInfo,
&performanceConfigurationIntel);
vkQueueSetPerformanceConfigurationINTEL(queue, performanceConfigurationIntel);
assert(VK_SUCCESS == result);
// Submit the command buffer and wait for its completion
// ...
result = vkReleasePerformanceConfigurationINTEL(
device,
performanceConfigurationIntel);
assert(VK_SUCCESS == result);
// Get the report size from metrics-discovery's QueryReportSize
result = vkGetQueryPoolResults(
device,
queryPool,
0, 1, QueryReportSize,
data, QueryReportSize, 0);
assert(VK_SUCCESS == result);
// The data can then be passed back to metrics-discovery from which
// human readable values can be queried.
VK_INTEL_performance_query| Modifier and Type | Field and Description |
|---|---|
static java.lang.String |
VK_INTEL_PERFORMANCE_QUERY_EXTENSION_NAME
The extension name.
|
static int |
VK_INTEL_PERFORMANCE_QUERY_SPEC_VERSION
The extension specification version.
|
static int |
VK_OBJECT_TYPE_PERFORMANCE_CONFIGURATION_INTEL
Extends
VkObjectType. |
static int |
VK_PERFORMANCE_CONFIGURATION_TYPE_COMMAND_QUEUE_METRICS_DISCOVERY_ACTIVATED_INTEL
VkPerformanceConfigurationTypeINTEL - Type of performance configuration
|
static int |
VK_PERFORMANCE_OVERRIDE_TYPE_FLUSH_GPU_CACHES_INTEL
VkPerformanceOverrideTypeINTEL - Performance override type
|
static int |
VK_PERFORMANCE_OVERRIDE_TYPE_NULL_HARDWARE_INTEL
VkPerformanceOverrideTypeINTEL - Performance override type
|
static int |
VK_PERFORMANCE_PARAMETER_TYPE_HW_COUNTERS_SUPPORTED_INTEL
VkPerformanceParameterTypeINTEL - Parameters that can be queried
|
static int |
VK_PERFORMANCE_PARAMETER_TYPE_STREAM_MARKER_VALID_BITS_INTEL
VkPerformanceParameterTypeINTEL - Parameters that can be queried
|
static int |
VK_PERFORMANCE_VALUE_TYPE_BOOL_INTEL
VkPerformanceValueTypeINTEL - Type of the parameters that can be queried
|
static int |
VK_PERFORMANCE_VALUE_TYPE_FLOAT_INTEL
VkPerformanceValueTypeINTEL - Type of the parameters that can be queried
|
static int |
VK_PERFORMANCE_VALUE_TYPE_STRING_INTEL
VkPerformanceValueTypeINTEL - Type of the parameters that can be queried
|
static int |
VK_PERFORMANCE_VALUE_TYPE_UINT32_INTEL
VkPerformanceValueTypeINTEL - Type of the parameters that can be queried
|
static int |
VK_PERFORMANCE_VALUE_TYPE_UINT64_INTEL
VkPerformanceValueTypeINTEL - Type of the parameters that can be queried
|
static int |
VK_QUERY_POOL_SAMPLING_MODE_MANUAL_INTEL
VkQueryPoolSamplingModeINTEL - Enum specifying how performance queries should be captured
|
static int |
VK_QUERY_TYPE_PERFORMANCE_QUERY_INTEL
Extends
VkQueryType. |
static int |
VK_STRUCTURE_TYPE_INITIALIZE_PERFORMANCE_API_INFO_INTEL
Extends
VkStructureType. |
static int |
VK_STRUCTURE_TYPE_PERFORMANCE_CONFIGURATION_ACQUIRE_INFO_INTEL
Extends
VkStructureType. |
static int |
VK_STRUCTURE_TYPE_PERFORMANCE_MARKER_INFO_INTEL
Extends
VkStructureType. |
static int |
VK_STRUCTURE_TYPE_PERFORMANCE_OVERRIDE_INFO_INTEL
Extends
VkStructureType. |
static int |
VK_STRUCTURE_TYPE_PERFORMANCE_STREAM_MARKER_INFO_INTEL
Extends
VkStructureType. |
static int |
VK_STRUCTURE_TYPE_QUERY_POOL_CREATE_INFO_INTEL
Extends
VkStructureType. |
| Modifier and Type | Method and Description |
|---|---|
static int |
nvkAcquirePerformanceConfigurationINTEL(org.lwjgl.vulkan.VkDevice device,
long pAcquireInfo,
long pConfiguration)
Unsafe version of:
AcquirePerformanceConfigurationINTEL |
static int |
nvkCmdSetPerformanceMarkerINTEL(org.lwjgl.vulkan.VkCommandBuffer commandBuffer,
long pMarkerInfo)
Unsafe version of:
CmdSetPerformanceMarkerINTEL |
static int |
nvkCmdSetPerformanceOverrideINTEL(org.lwjgl.vulkan.VkCommandBuffer commandBuffer,
long pOverrideInfo)
Unsafe version of:
CmdSetPerformanceOverrideINTEL |
static int |
nvkCmdSetPerformanceStreamMarkerINTEL(org.lwjgl.vulkan.VkCommandBuffer commandBuffer,
long pMarkerInfo)
Unsafe version of:
CmdSetPerformanceStreamMarkerINTEL |
static int |
nvkGetPerformanceParameterINTEL(org.lwjgl.vulkan.VkDevice device,
int parameter,
long pValue)
Unsafe version of:
GetPerformanceParameterINTEL |
static int |
nvkInitializePerformanceApiINTEL(org.lwjgl.vulkan.VkDevice device,
long pInitializeInfo)
Unsafe version of:
InitializePerformanceApiINTEL |
static int |
vkAcquirePerformanceConfigurationINTEL(org.lwjgl.vulkan.VkDevice device,
VkPerformanceConfigurationAcquireInfoINTEL pAcquireInfo,
long[] pConfiguration)
Array version of:
AcquirePerformanceConfigurationINTEL |
static int |
vkAcquirePerformanceConfigurationINTEL(org.lwjgl.vulkan.VkDevice device,
VkPerformanceConfigurationAcquireInfoINTEL pAcquireInfo,
java.nio.LongBuffer pConfiguration)
Acquire the performance query capability.
|
static int |
vkCmdSetPerformanceMarkerINTEL(org.lwjgl.vulkan.VkCommandBuffer commandBuffer,
VkPerformanceMarkerInfoINTEL pMarkerInfo)
Markers.
|
static int |
vkCmdSetPerformanceOverrideINTEL(org.lwjgl.vulkan.VkCommandBuffer commandBuffer,
VkPerformanceOverrideInfoINTEL pOverrideInfo)
Performance override settings.
|
static int |
vkCmdSetPerformanceStreamMarkerINTEL(org.lwjgl.vulkan.VkCommandBuffer commandBuffer,
VkPerformanceStreamMarkerInfoINTEL pMarkerInfo)
Markers.
|
static int |
vkGetPerformanceParameterINTEL(org.lwjgl.vulkan.VkDevice device,
int parameter,
VkPerformanceValueINTEL pValue)
Query performance capabilities of the device.
|
static int |
vkInitializePerformanceApiINTEL(org.lwjgl.vulkan.VkDevice device,
VkInitializePerformanceApiInfoINTEL pInitializeInfo)
Initialize a device for performance queries.
|
static int |
vkQueueSetPerformanceConfigurationINTEL(org.lwjgl.vulkan.VkQueue queue,
long configuration)
Set a performance query.
|
static int |
vkReleasePerformanceConfigurationINTEL(org.lwjgl.vulkan.VkDevice device,
long configuration)
Release a configuration to capture performance data.
|
static void |
vkUninitializePerformanceApiINTEL(org.lwjgl.vulkan.VkDevice device)
Uninitialize a device for performance queries.
|
public static final int VK_INTEL_PERFORMANCE_QUERY_SPEC_VERSION
public static final java.lang.String VK_INTEL_PERFORMANCE_QUERY_EXTENSION_NAME
public static final int VK_STRUCTURE_TYPE_QUERY_POOL_CREATE_INFO_INTEL
VkStructureType.
STRUCTURE_TYPE_QUERY_POOL_CREATE_INFO_INTELSTRUCTURE_TYPE_INITIALIZE_PERFORMANCE_API_INFO_INTELSTRUCTURE_TYPE_PERFORMANCE_MARKER_INFO_INTELSTRUCTURE_TYPE_PERFORMANCE_STREAM_MARKER_INFO_INTELSTRUCTURE_TYPE_PERFORMANCE_OVERRIDE_INFO_INTELSTRUCTURE_TYPE_PERFORMANCE_CONFIGURATION_ACQUIRE_INFO_INTELpublic static final int VK_STRUCTURE_TYPE_INITIALIZE_PERFORMANCE_API_INFO_INTEL
VkStructureType.
STRUCTURE_TYPE_QUERY_POOL_CREATE_INFO_INTELSTRUCTURE_TYPE_INITIALIZE_PERFORMANCE_API_INFO_INTELSTRUCTURE_TYPE_PERFORMANCE_MARKER_INFO_INTELSTRUCTURE_TYPE_PERFORMANCE_STREAM_MARKER_INFO_INTELSTRUCTURE_TYPE_PERFORMANCE_OVERRIDE_INFO_INTELSTRUCTURE_TYPE_PERFORMANCE_CONFIGURATION_ACQUIRE_INFO_INTELpublic static final int VK_STRUCTURE_TYPE_PERFORMANCE_MARKER_INFO_INTEL
VkStructureType.
STRUCTURE_TYPE_QUERY_POOL_CREATE_INFO_INTELSTRUCTURE_TYPE_INITIALIZE_PERFORMANCE_API_INFO_INTELSTRUCTURE_TYPE_PERFORMANCE_MARKER_INFO_INTELSTRUCTURE_TYPE_PERFORMANCE_STREAM_MARKER_INFO_INTELSTRUCTURE_TYPE_PERFORMANCE_OVERRIDE_INFO_INTELSTRUCTURE_TYPE_PERFORMANCE_CONFIGURATION_ACQUIRE_INFO_INTELpublic static final int VK_STRUCTURE_TYPE_PERFORMANCE_STREAM_MARKER_INFO_INTEL
VkStructureType.
STRUCTURE_TYPE_QUERY_POOL_CREATE_INFO_INTELSTRUCTURE_TYPE_INITIALIZE_PERFORMANCE_API_INFO_INTELSTRUCTURE_TYPE_PERFORMANCE_MARKER_INFO_INTELSTRUCTURE_TYPE_PERFORMANCE_STREAM_MARKER_INFO_INTELSTRUCTURE_TYPE_PERFORMANCE_OVERRIDE_INFO_INTELSTRUCTURE_TYPE_PERFORMANCE_CONFIGURATION_ACQUIRE_INFO_INTELpublic static final int VK_STRUCTURE_TYPE_PERFORMANCE_OVERRIDE_INFO_INTEL
VkStructureType.
STRUCTURE_TYPE_QUERY_POOL_CREATE_INFO_INTELSTRUCTURE_TYPE_INITIALIZE_PERFORMANCE_API_INFO_INTELSTRUCTURE_TYPE_PERFORMANCE_MARKER_INFO_INTELSTRUCTURE_TYPE_PERFORMANCE_STREAM_MARKER_INFO_INTELSTRUCTURE_TYPE_PERFORMANCE_OVERRIDE_INFO_INTELSTRUCTURE_TYPE_PERFORMANCE_CONFIGURATION_ACQUIRE_INFO_INTELpublic static final int VK_STRUCTURE_TYPE_PERFORMANCE_CONFIGURATION_ACQUIRE_INFO_INTEL
VkStructureType.
STRUCTURE_TYPE_QUERY_POOL_CREATE_INFO_INTELSTRUCTURE_TYPE_INITIALIZE_PERFORMANCE_API_INFO_INTELSTRUCTURE_TYPE_PERFORMANCE_MARKER_INFO_INTELSTRUCTURE_TYPE_PERFORMANCE_STREAM_MARKER_INFO_INTELSTRUCTURE_TYPE_PERFORMANCE_OVERRIDE_INFO_INTELSTRUCTURE_TYPE_PERFORMANCE_CONFIGURATION_ACQUIRE_INFO_INTELpublic static final int VK_QUERY_TYPE_PERFORMANCE_QUERY_INTEL
VkQueryType.public static final int VK_OBJECT_TYPE_PERFORMANCE_CONFIGURATION_INTEL
VkObjectType.public static final int VK_PERFORMANCE_CONFIGURATION_TYPE_COMMAND_QUEUE_METRICS_DISCOVERY_ACTIVATED_INTEL
public static final int VK_QUERY_POOL_SAMPLING_MODE_MANUAL_INTEL
QUERY_POOL_SAMPLING_MODE_MANUAL_INTEL is the default mode in which the application calls CmdBeginQuery and CmdEndQuery to record performance data.public static final int VK_PERFORMANCE_OVERRIDE_TYPE_NULL_HARDWARE_INTEL
PERFORMANCE_OVERRIDE_TYPE_NULL_HARDWARE_INTEL turns all rendering operations into noop.PERFORMANCE_OVERRIDE_TYPE_FLUSH_GPU_CACHES_INTEL stalls the stream of commands until all previously emitted commands have completed and all caches been flushed and invalidated.public static final int VK_PERFORMANCE_OVERRIDE_TYPE_FLUSH_GPU_CACHES_INTEL
PERFORMANCE_OVERRIDE_TYPE_NULL_HARDWARE_INTEL turns all rendering operations into noop.PERFORMANCE_OVERRIDE_TYPE_FLUSH_GPU_CACHES_INTEL stalls the stream of commands until all previously emitted commands have completed and all caches been flushed and invalidated.public static final int VK_PERFORMANCE_PARAMETER_TYPE_HW_COUNTERS_SUPPORTED_INTEL
PERFORMANCE_PARAMETER_TYPE_HW_COUNTERS_SUPPORTED_INTEL has a boolean result which tells whether hardware counters can be captured.PERFORMANCE_PARAMETER_TYPE_STREAM_MARKER_VALID_BITS_INTEL has a 32 bits integer result which tells how many bits can be written into the VkPerformanceValueINTEL value.public static final int VK_PERFORMANCE_PARAMETER_TYPE_STREAM_MARKER_VALID_BITS_INTEL
PERFORMANCE_PARAMETER_TYPE_HW_COUNTERS_SUPPORTED_INTEL has a boolean result which tells whether hardware counters can be captured.PERFORMANCE_PARAMETER_TYPE_STREAM_MARKER_VALID_BITS_INTEL has a 32 bits integer result which tells how many bits can be written into the VkPerformanceValueINTEL value.public static final int VK_PERFORMANCE_VALUE_TYPE_UINT32_INTEL
public static final int VK_PERFORMANCE_VALUE_TYPE_UINT64_INTEL
public static final int VK_PERFORMANCE_VALUE_TYPE_FLOAT_INTEL
public static final int VK_PERFORMANCE_VALUE_TYPE_BOOL_INTEL
public static final int VK_PERFORMANCE_VALUE_TYPE_STRING_INTEL
public static int nvkInitializePerformanceApiINTEL(org.lwjgl.vulkan.VkDevice device,
long pInitializeInfo)
InitializePerformanceApiINTELpublic static int vkInitializePerformanceApiINTEL(org.lwjgl.vulkan.VkDevice device,
VkInitializePerformanceApiInfoINTEL pInitializeInfo)
Prior to creating a performance query pool, initialize the device for performance queries with the call:
VkResult vkInitializePerformanceApiINTEL(
VkDevice device,
const VkInitializePerformanceApiInfoINTEL* pInitializeInfo);
device must be a valid VkDevice handlepInitializeInfo must be a valid pointer to a valid VkInitializePerformanceApiInfoINTEL structuredevice - the logical device used for the queries.pInitializeInfo - a pointer to a VkInitializePerformanceApiInfoINTEL structure specifying initialization parameters.public static void vkUninitializePerformanceApiINTEL(org.lwjgl.vulkan.VkDevice device)
Once performance query operations have completed, uninitalize the device for performance queries with the call:
void vkUninitializePerformanceApiINTEL(
VkDevice device);
device must be a valid VkDevice handledevice - the logical device used for the queries.public static int nvkCmdSetPerformanceMarkerINTEL(org.lwjgl.vulkan.VkCommandBuffer commandBuffer,
long pMarkerInfo)
CmdSetPerformanceMarkerINTELpublic static int vkCmdSetPerformanceMarkerINTEL(org.lwjgl.vulkan.VkCommandBuffer commandBuffer,
VkPerformanceMarkerInfoINTEL pMarkerInfo)
To help associate query results with a particular point at which an application emitted commands, markers can be set into the command buffers with the call:
VkResult vkCmdSetPerformanceMarkerINTEL(
VkCommandBuffer commandBuffer,
const VkPerformanceMarkerInfoINTEL* pMarkerInfo);
commandBuffer must be a valid VkCommandBuffer handlepMarkerInfo must be a valid pointer to a valid VkPerformanceMarkerInfoINTEL structurecommandBuffer 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 |
public static int nvkCmdSetPerformanceStreamMarkerINTEL(org.lwjgl.vulkan.VkCommandBuffer commandBuffer,
long pMarkerInfo)
CmdSetPerformanceStreamMarkerINTELpublic static int vkCmdSetPerformanceStreamMarkerINTEL(org.lwjgl.vulkan.VkCommandBuffer commandBuffer,
VkPerformanceStreamMarkerInfoINTEL pMarkerInfo)
When monitoring the behavior of an application wihtin the dataset generated by the entire set of applications running on the system, it is useful to identify draw calls within a potentially huge amount of performance data. To do so, application can generate stream markers that will be used to trace back a particular draw call with a particular performance data item.
VkResult vkCmdSetPerformanceStreamMarkerINTEL(
VkCommandBuffer commandBuffer,
const VkPerformanceStreamMarkerInfoINTEL* pMarkerInfo);
commandBuffer must be a valid VkCommandBuffer handlepMarkerInfo must be a valid pointer to a valid VkPerformanceStreamMarkerInfoINTEL structurecommandBuffer 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 |
public static int nvkCmdSetPerformanceOverrideINTEL(org.lwjgl.vulkan.VkCommandBuffer commandBuffer,
long pOverrideInfo)
CmdSetPerformanceOverrideINTELpublic static int vkCmdSetPerformanceOverrideINTEL(org.lwjgl.vulkan.VkCommandBuffer commandBuffer,
VkPerformanceOverrideInfoINTEL pOverrideInfo)
Some applications might want measure the effect of a set of commands with a different settings. It is possible to override a particular settings using :
VkResult vkCmdSetPerformanceOverrideINTEL(
VkCommandBuffer commandBuffer,
const VkPerformanceOverrideInfoINTEL* pOverrideInfo);
pOverrideInfo must not be used with a VkPerformanceOverrideTypeINTEL that is not reported available by vkGetPerformanceParameterINTEL.commandBuffer must be a valid VkCommandBuffer handlepOverrideInfo must be a valid pointer to a valid VkPerformanceOverrideInfoINTEL structurecommandBuffer 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 where the override takes place.pOverrideInfo - a pointer to a VkPerformanceOverrideInfoINTEL structure selecting the parameter to override.public static int nvkAcquirePerformanceConfigurationINTEL(org.lwjgl.vulkan.VkDevice device,
long pAcquireInfo,
long pConfiguration)
AcquirePerformanceConfigurationINTELpublic static int vkAcquirePerformanceConfigurationINTEL(org.lwjgl.vulkan.VkDevice device,
VkPerformanceConfigurationAcquireInfoINTEL pAcquireInfo,
java.nio.LongBuffer pConfiguration)
To acquire a device performance configuration, call:
VkResult vkAcquirePerformanceConfigurationINTEL(
VkDevice device,
const VkPerformanceConfigurationAcquireInfoINTEL* pAcquireInfo,
VkPerformanceConfigurationINTEL* pConfiguration);
device must be a valid VkDevice handlepAcquireInfo must be a valid pointer to a valid VkPerformanceConfigurationAcquireInfoINTEL structurepConfiguration must be a valid pointer to a VkPerformanceConfigurationINTEL handledevice - the logical device that the performance query commands will be submitted to.pAcquireInfo - a pointer to a VkPerformanceConfigurationAcquireInfoINTEL structure, specifying the performance configuration to acquire.pConfiguration - a pointer to a VkPerformanceConfigurationINTEL handle in which the resulting configuration object is returned.public static int vkReleasePerformanceConfigurationINTEL(org.lwjgl.vulkan.VkDevice device,
long configuration)
To release a device performance configuration, call:
VkResult vkReleasePerformanceConfigurationINTEL(
VkDevice device,
VkPerformanceConfigurationINTEL configuration);
configuration must not be released before all command buffers submitted while the configuration was set are in pending state.device must be a valid VkDevice handleconfiguration must be a valid VkPerformanceConfigurationINTEL handleconfiguration must have been created, allocated, or retrieved from devicedevice - the device associated to the configuration object to release.configuration - the configuration object to release.public static int vkQueueSetPerformanceConfigurationINTEL(org.lwjgl.vulkan.VkQueue queue,
long configuration)
To set a performance configuration, call:
VkResult vkQueueSetPerformanceConfigurationINTEL(
VkQueue queue,
VkPerformanceConfigurationINTEL configuration);
queue must be a valid VkQueue handleconfiguration must be a valid VkPerformanceConfigurationINTEL handleconfiguration, and queue must have been created, allocated, or retrieved from the same VkDevice| Command Buffer Levels | Render Pass Scope | Supported Queue Types | Pipeline Type |
|---|---|---|---|
| - | - | Any | - |
queue - the queue on which the configuration will be used.configuration - the configuration to use.public static int nvkGetPerformanceParameterINTEL(org.lwjgl.vulkan.VkDevice device,
int parameter,
long pValue)
GetPerformanceParameterINTELpublic static int vkGetPerformanceParameterINTEL(org.lwjgl.vulkan.VkDevice device,
int parameter,
VkPerformanceValueINTEL pValue)
Some performance query features of a device can be discovered with the call:
VkResult vkGetPerformanceParameterINTEL(
VkDevice device,
VkPerformanceParameterTypeINTEL parameter,
VkPerformanceValueINTEL* pValue);
device must be a valid VkDevice handleparameter must be a valid VkPerformanceParameterTypeINTEL valuepValue must be a valid pointer to a VkPerformanceValueINTEL structuredevice - the logical device to query.parameter - the parameter to query.pValue - a pointer to a VkPerformanceValueINTEL structure in which the type and value of the parameter are returned.public static int vkAcquirePerformanceConfigurationINTEL(org.lwjgl.vulkan.VkDevice device,
VkPerformanceConfigurationAcquireInfoINTEL pAcquireInfo,
long[] pConfiguration)
AcquirePerformanceConfigurationINTELCopyright LWJGL. All Rights Reserved. License terms.