Skip to content

Deprecate Pipeline Cache, replace with Pipeline Binaries #854

Open
@devshgraphicsprogramming

Description

Description

VK_KHR_pipeline_binary introduces the ability to dump individual binary parts of a pipeline and re-creating the pipeline from them.

Description of the related problem

The Pipeline Cache is a messy object because it functions as a collection of all pipeline binaries, also it can only grow polluting itself with old pipeline versions that will never be used again.

The Pipeline Binaries allow us to get and cache the pipeline compilation result on a per-pipeline and per-driver version basis.

Solution proposal

Remove PipelineCache as an asset and object from Nabla entirely.

After #839 , make a union between the ShaderSpec info cretion params and pipeline binary objects.

Additional context

Note that Shader Stages and Pipeline Binaries don't map 1:1 so SpecializedShaderInfo can't be a union of 1 entry point and one pipeline binary.

Also some stuff from the spec shader info is needed to compute a pipeline cache key, so what to union is not clear 100%.

The VK_KHR_pipeline_binary extension needs to become ubiquitous

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions