| Safe Haskell | None |
|---|---|
| Language | Haskell2010 |
Vulkan.Extensions.VK_KHR_performance_query
Synopsis
- enumeratePhysicalDeviceQueueFamilyPerformanceQueryCountersKHR :: forall io. MonadIO io => PhysicalDevice -> ("queueFamilyIndex" ::: Word32) -> io (Result, "counters" ::: Vector PerformanceCounterKHR, "counterDescriptions" ::: Vector PerformanceCounterDescriptionKHR)
- getPhysicalDeviceQueueFamilyPerformanceQueryPassesKHR :: forall io. MonadIO io => PhysicalDevice -> ("performanceQueryCreateInfo" ::: QueryPoolPerformanceCreateInfoKHR) -> io ("numPasses" ::: Word32)
- acquireProfilingLockKHR :: forall io. MonadIO io => Device -> AcquireProfilingLockInfoKHR -> io ()
- releaseProfilingLockKHR :: forall io. MonadIO io => Device -> io ()
- data PhysicalDevicePerformanceQueryFeaturesKHR = PhysicalDevicePerformanceQueryFeaturesKHR {}
- data PhysicalDevicePerformanceQueryPropertiesKHR = PhysicalDevicePerformanceQueryPropertiesKHR {}
- data PerformanceCounterKHR = PerformanceCounterKHR {}
- data PerformanceCounterDescriptionKHR = PerformanceCounterDescriptionKHR {}
- data QueryPoolPerformanceCreateInfoKHR = QueryPoolPerformanceCreateInfoKHR {}
- data AcquireProfilingLockInfoKHR = AcquireProfilingLockInfoKHR {}
- data PerformanceQuerySubmitInfoKHR = PerformanceQuerySubmitInfoKHR {}
- data PerformanceCounterResultKHR
- newtype PerformanceCounterScopeKHR where
- newtype PerformanceCounterUnitKHR where
- PerformanceCounterUnitKHR Int32
- pattern PERFORMANCE_COUNTER_UNIT_GENERIC_KHR :: PerformanceCounterUnitKHR
- pattern PERFORMANCE_COUNTER_UNIT_PERCENTAGE_KHR :: PerformanceCounterUnitKHR
- pattern PERFORMANCE_COUNTER_UNIT_NANOSECONDS_KHR :: PerformanceCounterUnitKHR
- pattern PERFORMANCE_COUNTER_UNIT_BYTES_KHR :: PerformanceCounterUnitKHR
- pattern PERFORMANCE_COUNTER_UNIT_BYTES_PER_SECOND_KHR :: PerformanceCounterUnitKHR
- pattern PERFORMANCE_COUNTER_UNIT_KELVIN_KHR :: PerformanceCounterUnitKHR
- pattern PERFORMANCE_COUNTER_UNIT_WATTS_KHR :: PerformanceCounterUnitKHR
- pattern PERFORMANCE_COUNTER_UNIT_VOLTS_KHR :: PerformanceCounterUnitKHR
- pattern PERFORMANCE_COUNTER_UNIT_AMPS_KHR :: PerformanceCounterUnitKHR
- pattern PERFORMANCE_COUNTER_UNIT_HERTZ_KHR :: PerformanceCounterUnitKHR
- pattern PERFORMANCE_COUNTER_UNIT_CYCLES_KHR :: PerformanceCounterUnitKHR
- newtype PerformanceCounterStorageKHR where
- PerformanceCounterStorageKHR Int32
- pattern PERFORMANCE_COUNTER_STORAGE_INT32_KHR :: PerformanceCounterStorageKHR
- pattern PERFORMANCE_COUNTER_STORAGE_INT64_KHR :: PerformanceCounterStorageKHR
- pattern PERFORMANCE_COUNTER_STORAGE_UINT32_KHR :: PerformanceCounterStorageKHR
- pattern PERFORMANCE_COUNTER_STORAGE_UINT64_KHR :: PerformanceCounterStorageKHR
- pattern PERFORMANCE_COUNTER_STORAGE_FLOAT32_KHR :: PerformanceCounterStorageKHR
- pattern PERFORMANCE_COUNTER_STORAGE_FLOAT64_KHR :: PerformanceCounterStorageKHR
- newtype PerformanceCounterDescriptionFlagBitsKHR where
- type PerformanceCounterDescriptionFlagsKHR = PerformanceCounterDescriptionFlagBitsKHR
- newtype AcquireProfilingLockFlagBitsKHR = AcquireProfilingLockFlagBitsKHR Flags
- type AcquireProfilingLockFlagsKHR = AcquireProfilingLockFlagBitsKHR
- type KHR_PERFORMANCE_QUERY_SPEC_VERSION = 1
- pattern KHR_PERFORMANCE_QUERY_SPEC_VERSION :: forall a. Integral a => a
- type KHR_PERFORMANCE_QUERY_EXTENSION_NAME = "VK_KHR_performance_query"
- pattern KHR_PERFORMANCE_QUERY_EXTENSION_NAME :: forall a. (Eq a, IsString a) => a
Documentation
enumeratePhysicalDeviceQueueFamilyPerformanceQueryCountersKHR Source #
Arguments
| :: forall io. MonadIO io | |
| => PhysicalDevice |
|
| -> ("queueFamilyIndex" ::: Word32) |
|
| -> io (Result, "counters" ::: Vector PerformanceCounterKHR, "counterDescriptions" ::: Vector PerformanceCounterDescriptionKHR) |
vkEnumeratePhysicalDeviceQueueFamilyPerformanceQueryCountersKHR - Reports properties of the performance query counters available on a queue family of a device
Description
If pCounters is NULL and pCounterDescriptions is NULL, then the
number of counters available is returned in pCounterCount. Otherwise,
pCounterCount must point to a variable set by the user to the number
of elements in the pCounters, pCounterDescriptions, or both arrays
and on return the variable is overwritten with the number of structures
actually written out. If pCounterCount is less than the number of
counters available, at most pCounterCount structures will be written
and INCOMPLETE will be returned instead of
SUCCESS.
Valid Usage (Implicit)
physicalDevicemust be a validPhysicalDevicehandle
pCounterCountmust be a valid pointer to auint32_tvalue- If the value referenced by
pCounterCountis not0, andpCountersis notNULL,pCountersmust be a valid pointer to an array ofpCounterCountPerformanceCounterKHRstructures - If the value referenced by
pCounterCountis not0, andpCounterDescriptionsis notNULL,pCounterDescriptionsmust be a valid pointer to an array ofpCounterCountPerformanceCounterDescriptionKHRstructures
Return Codes
See Also
PerformanceCounterDescriptionKHR, PerformanceCounterKHR,
PhysicalDevice
getPhysicalDeviceQueueFamilyPerformanceQueryPassesKHR Source #
Arguments
| :: forall io. MonadIO io | |
| => PhysicalDevice |
|
| -> ("performanceQueryCreateInfo" ::: QueryPoolPerformanceCreateInfoKHR) |
|
| -> io ("numPasses" ::: Word32) |
vkGetPhysicalDeviceQueueFamilyPerformanceQueryPassesKHR - Reports the number of passes require for a performance query pool type
Description
The pPerformanceQueryCreateInfo member
QueryPoolPerformanceCreateInfoKHR::queueFamilyIndex must be a
queue family of physicalDevice. The number of passes required to
capture the counters specified in the pPerformanceQueryCreateInfo
member QueryPoolPerformanceCreateInfoKHR::pCounters is returned in
pNumPasses.
Valid Usage (Implicit)
See Also
acquireProfilingLockKHR Source #
Arguments
| :: forall io. MonadIO io | |
| => Device |
|
| -> AcquireProfilingLockInfoKHR |
|
| -> io () |
releaseProfilingLockKHR Source #
Arguments
| :: forall io. MonadIO io | |
| => Device |
|
| -> io () |
vkReleaseProfilingLockKHR - Releases the profiling lock
Valid Usage
- The profiling lock of
devicemust have been held via a previous successful call toacquireProfilingLockKHR
Valid Usage (Implicit)
devicemust be a validDevicehandle
See Also
data PhysicalDevicePerformanceQueryFeaturesKHR Source #
VkPhysicalDevicePerformanceQueryFeaturesKHR - Structure describing performance query support for an implementation
Members
The members of the PhysicalDevicePerformanceQueryFeaturesKHR structure
describe the following implementation-dependent features:
Valid Usage (Implicit)
To query supported performance counter query pool features, call
getPhysicalDeviceFeatures2
with a PhysicalDevicePerformanceQueryFeaturesKHR structure included in
the pNext chain of its pFeatures parameter. The
PhysicalDevicePerformanceQueryFeaturesKHR structure can also be
included in the pNext chain of a
DeviceCreateInfo structure, in which case it
controls which additional features are enabled in the device.
See Also
Constructors
| PhysicalDevicePerformanceQueryFeaturesKHR | |
Fields
| |
Instances
data PhysicalDevicePerformanceQueryPropertiesKHR Source #
VkPhysicalDevicePerformanceQueryPropertiesKHR - Structure describing performance query properties for an implementation
Members
The members of the PhysicalDevicePerformanceQueryPropertiesKHR
structure describe the following implementation-dependent properties:
Valid Usage (Implicit)
If the PhysicalDevicePerformanceQueryPropertiesKHR structure is
included in the pNext chain of
PhysicalDeviceProperties2,
it is filled with the implementation-dependent properties.
See Also
Constructors
| PhysicalDevicePerformanceQueryPropertiesKHR | |
Fields
| |
Instances
data PerformanceCounterKHR Source #
VkPerformanceCounterKHR - Structure providing information about a counter
Valid Usage (Implicit)
See Also
PerformanceCounterScopeKHR, PerformanceCounterStorageKHR,
PerformanceCounterUnitKHR,
StructureType,
enumeratePhysicalDeviceQueueFamilyPerformanceQueryCountersKHR
Constructors
| PerformanceCounterKHR | |
Fields
| |
Instances
data PerformanceCounterDescriptionKHR Source #
VkPerformanceCounterDescriptionKHR - Structure providing more detailed information about a counter
Valid Usage (Implicit)
See Also
PerformanceCounterDescriptionFlagsKHR,
StructureType,
enumeratePhysicalDeviceQueueFamilyPerformanceQueryCountersKHR
Constructors
| PerformanceCounterDescriptionKHR | |
Fields
| |
Instances
data QueryPoolPerformanceCreateInfoKHR Source #
VkQueryPoolPerformanceCreateInfoKHR - Structure specifying parameters of a newly created performance query pool
Valid Usage
queueFamilyIndexmust be a valid queue family index of the device
- The performanceCounterQueryPools feature must be enabled
- Each element of
pCounterIndicesmust be in the range of counters reported byenumeratePhysicalDeviceQueueFamilyPerformanceQueryCountersKHRfor the queue family specified inqueueFamilyIndex
Valid Usage (Implicit)
sTypemust beSTRUCTURE_TYPE_QUERY_POOL_PERFORMANCE_CREATE_INFO_KHR
pCounterIndicesmust be a valid pointer to an array ofcounterIndexCountuint32_tvaluescounterIndexCountmust be greater than0
See Also
StructureType,
getPhysicalDeviceQueueFamilyPerformanceQueryPassesKHR
Constructors
| QueryPoolPerformanceCreateInfoKHR | |
Fields
| |
Instances
data AcquireProfilingLockInfoKHR Source #
VkAcquireProfilingLockInfoKHR - Structure specifying parameters to acquire the profiling lock
Valid Usage (Implicit)
If timeout is 0, acquireProfilingLockKHR will not block while
attempting to acquire the profling lock. If timeout is UINT64_MAX,
the function will not return until the profiling lock was acquired.
See Also
AcquireProfilingLockFlagsKHR,
StructureType,
acquireProfilingLockKHR
Constructors
| AcquireProfilingLockInfoKHR | |
Fields
| |
Instances
data PerformanceQuerySubmitInfoKHR Source #
VkPerformanceQuerySubmitInfoKHR - Structure indicating which counter pass index is active for performance queries
Description
If the SubmitInfo::pNext chain does not include
this structure, the batch defaults to use counter pass index 0.
Valid Usage (Implicit)
See Also
Constructors
| PerformanceQuerySubmitInfoKHR | |
Fields
| |
Instances
data PerformanceCounterResultKHR Source #
Constructors
| Int32Counter Int32 | |
| Int64Counter Int64 | |
| Uint32Counter Word32 | |
| Uint64Counter Word64 | |
| Float32Counter Float | |
| Float64Counter Double |
Instances
| Show PerformanceCounterResultKHR Source # | |
Defined in Vulkan.Extensions.VK_KHR_performance_query Methods showsPrec :: Int -> PerformanceCounterResultKHR -> ShowS # show :: PerformanceCounterResultKHR -> String # showList :: [PerformanceCounterResultKHR] -> ShowS # | |
| ToCStruct PerformanceCounterResultKHR Source # | |
Defined in Vulkan.Extensions.VK_KHR_performance_query Methods withCStruct :: PerformanceCounterResultKHR -> (Ptr PerformanceCounterResultKHR -> IO b) -> IO b Source # pokeCStruct :: Ptr PerformanceCounterResultKHR -> PerformanceCounterResultKHR -> IO b -> IO b Source # withZeroCStruct :: (Ptr PerformanceCounterResultKHR -> IO b) -> IO b Source # pokeZeroCStruct :: Ptr PerformanceCounterResultKHR -> IO b -> IO b Source # cStructSize :: Int Source # | |
| Zero PerformanceCounterResultKHR Source # | |
Defined in Vulkan.Extensions.VK_KHR_performance_query Methods | |
newtype PerformanceCounterScopeKHR Source #
Constructors
| PerformanceCounterScopeKHR Int32 |
Bundled Patterns
| pattern PERFORMANCE_COUNTER_SCOPE_COMMAND_BUFFER_KHR :: PerformanceCounterScopeKHR |
|
| pattern PERFORMANCE_COUNTER_SCOPE_RENDER_PASS_KHR :: PerformanceCounterScopeKHR |
|
| pattern PERFORMANCE_COUNTER_SCOPE_COMMAND_KHR :: PerformanceCounterScopeKHR |
|
Instances
newtype PerformanceCounterUnitKHR Source #
Constructors
| PerformanceCounterUnitKHR Int32 |
Bundled Patterns
Instances
newtype PerformanceCounterStorageKHR Source #
Constructors
| PerformanceCounterStorageKHR Int32 |
Bundled Patterns
Instances
newtype PerformanceCounterDescriptionFlagBitsKHR Source #
VkPerformanceCounterDescriptionFlagBitsKHR - Bitmask specifying usage behavior for a counter
See Also
Constructors
| PerformanceCounterDescriptionFlagBitsKHR Flags |
Bundled Patterns
| pattern PERFORMANCE_COUNTER_DESCRIPTION_PERFORMANCE_IMPACTING_KHR :: PerformanceCounterDescriptionFlagBitsKHR |
|
| pattern PERFORMANCE_COUNTER_DESCRIPTION_CONCURRENTLY_IMPACTED_KHR :: PerformanceCounterDescriptionFlagBitsKHR |
|
Instances
newtype AcquireProfilingLockFlagBitsKHR Source #
Constructors
| AcquireProfilingLockFlagBitsKHR Flags |
Instances
type KHR_PERFORMANCE_QUERY_SPEC_VERSION = 1 Source #
pattern KHR_PERFORMANCE_QUERY_SPEC_VERSION :: forall a. Integral a => a Source #
type KHR_PERFORMANCE_QUERY_EXTENSION_NAME = "VK_KHR_performance_query" Source #
pattern KHR_PERFORMANCE_QUERY_EXTENSION_NAME :: forall a. (Eq a, IsString a) => a Source #