[Bug 97476] Shader binaries should not be stored in the PipelineCache

bugzilla-daemon at freedesktop.org bugzilla-daemon at freedesktop.org
Thu Aug 25 03:51:42 UTC 2016


https://bugs.freedesktop.org/show_bug.cgi?id=97476

            Bug ID: 97476
           Summary: Shader binaries should not be stored in the
                    PipelineCache
           Product: Mesa
           Version: unspecified
          Hardware: Other
                OS: All
            Status: NEW
          Severity: normal
          Priority: medium
         Component: Drivers/Vulkan/intel
          Assignee: intel-3d-bugs at lists.freedesktop.org
          Reporter: jason at jlekstrand.net
        QA Contact: intel-3d-bugs at lists.freedesktop.org
                CC: jason at jlekstrand.net

Right now, the anv_pipeline_cache object owns the storage for the shaders and
their metadata: bind maps, prog_data, etc.  However, according to the Vulkan
spec:

> The following object types are consumed when they are passed into a Vulkan
> command and not further accessed by the objects they are used to create.
> They can be destroyed at any time they are not in use by an API command:
>
>  * VkShaderModule
>  * VkPipelineCache

Instead, we need to have global storage for shader binaries and related data,
probably reference-count it per-shader, and make the cache a dumb map from
SHA1s to shaders (and maybe own a reference to each of them?)

-- 
You are receiving this mail because:
You are the QA Contact for the bug.
You are the assignee for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.freedesktop.org/archives/intel-3d-bugs/attachments/20160825/d9f8b483/attachment.html>


More information about the intel-3d-bugs mailing list