VKMEMORYPROPERTYFLAG(3)

NAME
VkMemoryPropertyFlags - Memory pool properties.

C SPECIFICATION

    typedef enum VkMemoryPropertyFlagBits {
        VK_MEMORY_PROPERTY_DEVICE_LOCAL_BIT = 0x00000001,
        VK_MEMORY_PROPERTY_HOST_VISIBLE_BIT = 0x00000002,
        VK_MEMORY_PROPERTY_HOST_COHERENT_BIT = 0x00000004,
        VK_MEMORY_PROPERTY_HOST_CACHED_BIT = 0x00000008,
        VK_MEMORY_PROPERTY_LAZILY_ALLOCATED_BIT = 0x00000010,
    } VkMemoryPropertyFlagBits;

    typedef VkFlags VkMemoryPropertyFlags;

CONSTANTS

VK_MEMORY_PROPERTY_DEVICE_LOCAL_BIT
    Identifies a memory pool that is the most efficient for device access.

VK_MEMORY_PROPERTY_HOST_VISIBLE_BIT
    Identifies a memory pool that can be mapped into host memory address space and thus is accessible by the host.

VK_MEMORY_PROPERTY_HOST_COHERENT_BIT
    Identifies a memory pool where accesses between the host and the coherency domain are coherent. Memory without this property requires explicit use of vkFlushMappedMemoryRanges after host writes to this type of memory, and use of vkInvalidateMappedMemoryRanges before host reads from that memory.

VK_MEMORY_PROPERTY_HOST_CACHED_BIT
    Identifies memory that is cached by the host.

VK_MEMORY_PROPERTY_LAZILY_ALLOCATED_BIT
    Identifies memory where an object’s backing may be provided lazily (when needed) by the implementation.

DESCRIPTION

These flags are used in the VkMemoryAllocateInfo structure passed as parameter to vkAllocateMemory to define the properties of the memory pool the memory object should be allocated from.

Additionally, when querying the memory requirements of objects using vkGetBufferMemoryRequirements or vkGetImageMemoryRequirements, the memoryTypeBits member returned in the VkMemoryRequirements structure takes its values from these set of flags.

SEE ALSO

VkMemoryAllocateInfo, vkAllocateMemory, VkMemoryRequirements

COPYRIGHT

Copyright © 2014-2016 Khronos Group. This material may be distributed subject to the terms and conditions set forth in the Open Publication License, v 1.0, 8 June 1999. http://opencontent.org/openpub/.

AUTHOR

Khronos Group
    Author.