Safe Haskell | None |
---|---|
Language | Haskell2010 |
Name
VK_EXT_pipeline_creation_feedback - device extension
VK_EXT_pipeline_creation_feedback
- Name String
VK_EXT_pipeline_creation_feedback
- Extension Type
- Device extension
- Registered Extension Number
- 193
- Revision
- 1
- Extension and Version Dependencies
- Requires Vulkan 1.0
- Special Use
- Contact
Other Extension Metadata
- Last Modified Date
- 2019-03-12
- IP Status
- No known IP claims.
- Contributors
- Jean-Francois Roy, Google
- Hai Nguyen, Google
- Andrew Ellem, Google
- Bob Fraser, Google
- Sujeevan Rajayogam, Google
- Jan-Harald Fredriksen, ARM
- Jeff Leger, Qualcomm Technologies, Inc.
- Jeff Bolz, NVIDIA
- Daniel Koch, NVIDIA
- Neil Henning, AMD
Description
This extension adds a mechanism to provide feedback to an application about pipeline creation, with the specific goal of allowing a feedback loop between build systems and in-the-field application executions to ensure effective pipeline caches are shipped to customers.
New Structures
Extending
GraphicsPipelineCreateInfo
,ComputePipelineCreateInfo
,RayTracingPipelineCreateInfoNV
,RayTracingPipelineCreateInfoKHR
:
New Enums
New Bitmasks
New Enum Constants
Version History
Revision 1, 2019-03-12 (Jean-Francois Roy)
- Initial revision
See Also
PipelineCreationFeedbackCreateInfoEXT
, PipelineCreationFeedbackEXT
,
PipelineCreationFeedbackFlagBitsEXT
,
PipelineCreationFeedbackFlagsEXT
Document Notes
For more information, see the Vulkan Specification
This page is a generated document. Fixes and changes should be made to the generator scripts, not directly.
Synopsis
- data PipelineCreationFeedbackEXT = PipelineCreationFeedbackEXT {}
- data PipelineCreationFeedbackCreateInfoEXT = PipelineCreationFeedbackCreateInfoEXT {}
- type PipelineCreationFeedbackFlagsEXT = PipelineCreationFeedbackFlagBitsEXT
- newtype PipelineCreationFeedbackFlagBitsEXT where
- PipelineCreationFeedbackFlagBitsEXT Flags
- pattern PIPELINE_CREATION_FEEDBACK_VALID_BIT_EXT :: PipelineCreationFeedbackFlagBitsEXT
- pattern PIPELINE_CREATION_FEEDBACK_APPLICATION_PIPELINE_CACHE_HIT_BIT_EXT :: PipelineCreationFeedbackFlagBitsEXT
- pattern PIPELINE_CREATION_FEEDBACK_BASE_PIPELINE_ACCELERATION_BIT_EXT :: PipelineCreationFeedbackFlagBitsEXT
- type EXT_PIPELINE_CREATION_FEEDBACK_SPEC_VERSION = 1
- pattern EXT_PIPELINE_CREATION_FEEDBACK_SPEC_VERSION :: forall a. Integral a => a
- type EXT_PIPELINE_CREATION_FEEDBACK_EXTENSION_NAME = "VK_EXT_pipeline_creation_feedback"
- pattern EXT_PIPELINE_CREATION_FEEDBACK_EXTENSION_NAME :: forall a. (Eq a, IsString a) => a
Documentation
data PipelineCreationFeedbackEXT Source #
VkPipelineCreationFeedbackEXT - Feedback about the creation of a pipeline or pipeline stage
Description
If the PIPELINE_CREATION_FEEDBACK_VALID_BIT_EXT
is not set in flags
,
an implementation must not set any other bits in flags
, and the
values of all other PipelineCreationFeedbackEXT
data members are
undefined.
See Also
PipelineCreationFeedbackCreateInfoEXT
,
PipelineCreationFeedbackFlagBitsEXT
,
PipelineCreationFeedbackFlagsEXT
PipelineCreationFeedbackEXT | |
|
Instances
data PipelineCreationFeedbackCreateInfoEXT Source #
VkPipelineCreationFeedbackCreateInfoEXT - Request for feedback about the creation of a pipeline
Description
An implementation should write pipeline creation feedback to
pPipelineCreationFeedback
and may write pipeline stage creation
feedback to pPipelineStageCreationFeedbacks
. An implementation must
set or clear the PIPELINE_CREATION_FEEDBACK_VALID_BIT_EXT
in
PipelineCreationFeedbackEXT
::flags
for pPipelineCreationFeedback
and every element of pPipelineStageCreationFeedbacks
.
Note
One common scenario for an implementation to skip per-stage feedback is
when PIPELINE_CREATION_FEEDBACK_APPLICATION_PIPELINE_CACHE_HIT_BIT_EXT
is set in pPipelineCreationFeedback
.
When chained to
RayTracingPipelineCreateInfoKHR
,
RayTracingPipelineCreateInfoNV
, or
GraphicsPipelineCreateInfo
, the i
element of
pPipelineStageCreationFeedbacks
corresponds to the i
element of
RayTracingPipelineCreateInfoKHR
::pStages
,
RayTracingPipelineCreateInfoNV
::pStages
,
or GraphicsPipelineCreateInfo
::pStages
. When
chained to ComputePipelineCreateInfo
, the first
element of pPipelineStageCreationFeedbacks
corresponds to
ComputePipelineCreateInfo
::stage
.
Valid Usage
-
When chained to
GraphicsPipelineCreateInfo
,PipelineCreationFeedbackEXT
::pipelineStageCreationFeedbackCount
must equalGraphicsPipelineCreateInfo
::stageCount
-
When chained to
ComputePipelineCreateInfo
,PipelineCreationFeedbackEXT
::pipelineStageCreationFeedbackCount
must equal 1 -
When chained to
RayTracingPipelineCreateInfoKHR
,PipelineCreationFeedbackEXT
::pipelineStageCreationFeedbackCount
must equalRayTracingPipelineCreateInfoKHR
::stageCount
-
When chained to
RayTracingPipelineCreateInfoNV
,PipelineCreationFeedbackEXT
::pipelineStageCreationFeedbackCount
must equalRayTracingPipelineCreateInfoNV
::stageCount
Valid Usage (Implicit)
-
pPipelineCreationFeedback
must be a valid pointer to aPipelineCreationFeedbackEXT
structure -
pPipelineStageCreationFeedbacks
must be a valid pointer to an array ofpipelineStageCreationFeedbackCount
PipelineCreationFeedbackEXT
structures -
pipelineStageCreationFeedbackCount
must be greater than0
See Also
ComputePipelineCreateInfo
,
GraphicsPipelineCreateInfo
,
PipelineCreationFeedbackEXT
,
RayTracingPipelineCreateInfoKHR
,
RayTracingPipelineCreateInfoNV
,
StructureType
PipelineCreationFeedbackCreateInfoEXT | |
|
Instances
newtype PipelineCreationFeedbackFlagBitsEXT Source #
VkPipelineCreationFeedbackFlagBitsEXT - Bitmask specifying pipeline or pipeline stage creation feedback
See Also
PipelineCreationFeedbackCreateInfoEXT
, PipelineCreationFeedbackEXT
,
PipelineCreationFeedbackFlagsEXT
pattern PIPELINE_CREATION_FEEDBACK_VALID_BIT_EXT :: PipelineCreationFeedbackFlagBitsEXT |
|
pattern PIPELINE_CREATION_FEEDBACK_APPLICATION_PIPELINE_CACHE_HIT_BIT_EXT :: PipelineCreationFeedbackFlagBitsEXT |
An implementation should set the
Note Implementations are encouraged to provide a meaningful signal to applications using this bit. The intention is to communicate to the application that the pipeline or pipeline stage was created "as fast as it gets" using the pipeline cache provided by the application. If an implementation uses an internal cache, it is discouraged from setting this bit as the feedback would be unactionable. |
pattern PIPELINE_CREATION_FEEDBACK_BASE_PIPELINE_ACCELERATION_BIT_EXT :: PipelineCreationFeedbackFlagBitsEXT |
An implementation should set the
Note While "significant amount of work" is subjective, implementations are encouraged to provide a meaningful signal to applications using this bit. For example, a 1% reduction in duration may not warrant setting this bit, while a 50% reduction would. |
Instances
pattern EXT_PIPELINE_CREATION_FEEDBACK_SPEC_VERSION :: forall a. Integral a => a Source #
type EXT_PIPELINE_CREATION_FEEDBACK_EXTENSION_NAME = "VK_EXT_pipeline_creation_feedback" Source #
pattern EXT_PIPELINE_CREATION_FEEDBACK_EXTENSION_NAME :: forall a. (Eq a, IsString a) => a Source #