// Copyright (c) 2014-2016 Khronos Group. This work is licensed under a // Creative Commons Attribution 4.0 International License; see // http://creativecommons.org/licenses/by/4.0/ vkCreatePipelineCache(3) ======================== Name ---- vkCreatePipelineCache - Creates a new pipeline cache C Specification --------------- // refBegin vkCreatePipelineCache Creates a new pipeline cache To create pipeline cache objects, call: include::../api/protos/vkCreatePipelineCache.txt[] Parameters ---------- * pname:device is the logical device that creates the pipeline cache object. * pname:pCreateInfo is a pointer to a sname:VkPipelineCacheCreateInfo structure that contains the initial parameters for the pipeline cache object. * pname:pAllocator controls host memory allocation as described in the <> chapter. * pname:pPipelineCache is a pointer to a sname:VkPipelineCache handle in which the resulting pipeline cache object is returned. Description ----------- [NOTE] .Note ==== Applications can: track and manage the total host memory size of a pipeline cache object using the pname:pAllocator. Applications can: limit the amount of data retrieved from a pipeline cache object in fname:vkGetPipelineCacheData. Implementations shouldnot: internally limit the total number of entries added to a pipeline cache object or the total host memory consumed. ==== Once created, a pipeline cache can: be passed to the fname:vkCreateGraphicsPipelines and fname:vkCreateComputePipelines commands. If the pipeline cache passed into these commands is not dlink:VK_NULL_HANDLE, the implementation will query it for possible reuse opportunities and update it with new content. The use of the pipeline cache object in these commands is internally synchronized, and the same pipeline cache object can: be used in multiple threads simultaneously. [NOTE] .Note ==== Implementations should: make every effort to limit any critical sections to the actual accesses to the cache, which is expected to be significantly shorter than the duration of the fname:vkCreateGraphicsPipelines and fname:vkCreateComputePipelines commands. ==== include::../validity/protos/vkCreatePipelineCache.txt[] See Also -------- slink:VkAllocationCallbacks, slink:VkDevice, slink:VkPipelineCache, slink:VkPipelineCacheCreateInfo Document Notes -------------- For more information, see the Vulkan Specification at URL https://www.khronos.org/registry/vulkan/specs/1.0/xhtml/vkspec.html#vkCreatePipelineCache This page is extracted from the Vulkan Specification. Fixes and changes should be made to the Specification,not directly. include::footer.txt[]