2016-07-11 01:13:41 +00:00
|
|
|
// 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/
|
|
|
|
|
2016-02-16 09:53:44 +00:00
|
|
|
vkCreatePipelineCache(3)
|
|
|
|
========================
|
|
|
|
|
|
|
|
Name
|
|
|
|
----
|
|
|
|
vkCreatePipelineCache - Creates a new pipeline cache
|
|
|
|
|
|
|
|
C Specification
|
|
|
|
---------------
|
|
|
|
|
2016-07-11 01:13:41 +00:00
|
|
|
// refBegin vkCreatePipelineCache Creates a new pipeline cache
|
|
|
|
|
|
|
|
To create pipeline cache objects, call:
|
|
|
|
|
2016-02-16 09:53:44 +00:00
|
|
|
include::../protos/vkCreatePipelineCache.txt[]
|
|
|
|
|
2016-07-11 01:13:41 +00:00
|
|
|
|
2016-02-16 09:53:44 +00:00
|
|
|
Parameters
|
|
|
|
----------
|
|
|
|
|
2016-07-11 01:13:41 +00:00
|
|
|
* 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
|
|
|
|
<<memory-allocation, Memory Allocation>> chapter.
|
|
|
|
* pname:pPipelineCache is a pointer to a sname:VkPipelineCache handle in
|
|
|
|
which the resulting pipeline cache object is returned.
|
2016-02-16 09:53:44 +00:00
|
|
|
|
|
|
|
|
|
|
|
Description
|
|
|
|
-----------
|
|
|
|
|
2016-07-11 01:13:41 +00:00
|
|
|
[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[]
|
|
|
|
|
2016-02-16 09:53:44 +00:00
|
|
|
|
2016-07-11 01:13:41 +00:00
|
|
|
See Also
|
|
|
|
--------
|
2016-02-16 09:53:44 +00:00
|
|
|
|
2016-07-11 01:13:41 +00:00
|
|
|
slink:VkAllocationCallbacks, slink:VkDevice, slink:VkPipelineCache, slink:VkPipelineCacheCreateInfo
|
2016-02-16 09:53:44 +00:00
|
|
|
|
|
|
|
|
2016-07-11 01:13:41 +00:00
|
|
|
Document Notes
|
|
|
|
--------------
|
2016-02-16 09:53:44 +00:00
|
|
|
|
2016-07-11 01:13:41 +00:00
|
|
|
For more information, see the Vulkan Specification at URL
|
2016-02-16 09:53:44 +00:00
|
|
|
|
2016-07-11 01:13:41 +00:00
|
|
|
https://www.khronos.org/registry/vulkan/specs/1.0/xhtml/vkspec.html#vkCreatePipelineCache
|
2016-02-16 09:53:44 +00:00
|
|
|
|
2016-07-11 01:13:41 +00:00
|
|
|
This page is extracted from the Vulkan Specification.
|
|
|
|
Fixes and changes should be made to the Specification,not directly.
|
2016-02-16 09:53:44 +00:00
|
|
|
|
|
|
|
include::footer.txt[]
|
2016-07-11 01:13:41 +00:00
|
|
|
|