Skip to content

Added support for VK_KHR_PIPELINE_EXECUTABLE_PROPERTIES#1003

Open
karimsayedre wants to merge 4 commits intomasterfrom
pipeline-exec-info
Open

Added support for VK_KHR_PIPELINE_EXECUTABLE_PROPERTIES#1003
karimsayedre wants to merge 4 commits intomasterfrom
pipeline-exec-info

Conversation

@karimsayedre
Copy link
Contributor

Notes:

  • As mentioned in examples_tests #253, it seems ray tracing pipeline doesn't actually report at all (only tested example 71).

…cks, `getPipelineExecutableProperties_impl` overloads with one helper function
Comment on lines +1196 to +1201
if (info.flags.hasFlags(IGPUComputePipeline::SCreationParams::FLAGS::CAPTURE_STATISTICS))
{
pipeline->populateExecutableInfo(info.flags.hasFlags(IGPUComputePipeline::SCreationParams::FLAGS::CAPTURE_INTERNAL_REPRESENTATIONS));
if (pipeline->getExecutableInfo().empty())
m_logger.log("Driver returned 0 executables for pipeline created with CAPTURE_STATISTICS flag. This pipeline type may not be supported by the driver's VK_KHR_pipeline_executable_properties implementation.", system::ILogger::ELL_WARNING);
}

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

there's shared validation of pipeline creation parameters we do in ILogicalDevice, put that there

if (pipeline->getExecutableInfo().empty())
m_logger.log("Driver returned 0 executables for pipeline created with CAPTURE_STATISTICS flag. This pipeline type may not be supported by the driver's VK_KHR_pipeline_executable_properties implementation.", system::ILogger::ELL_WARNING);
}
output[i] = std::move(pipeline);

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

why not call into populateExecutableInfo from the constructors ?


inline VkPipeline getInternalObject() const { return m_vkPipeline; }

void populateExecutableInfo(bool includeInternalRepresentations);

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

add it as a pure virtual protected function in IGPUPipeline

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants