VkMemoryMapPlacedInfoEXT(3)

# VkMemoryMapPlacedInfoEXT(3) Manual Page

## Name

VkMemoryMapPlacedInfoEXT - Structure containing memory map placement parameters

## C Specification

If VK_MEMORY_MAP_PLACED_BIT_EXT is set in `VkMemoryMapInfo`::`flags` and the `pNext` chain of VkMemoryMapInfo includes a `VkMemoryMapPlacedInfoEXT` structure, then that structure specifies the placement address of the memory map. The implementation will place the memory map at the specified address, replacing any existing maps in the specified memory range. Replacing memory maps in this way does not implicitly unmap Vulkan memory objects. Instead, the application must ensure no other Vulkan memory objects are mapped anywhere in the specified virtual address range. If successful, `ppData` will be set to the same value as `VkMemoryMapPlacedInfoEXT`::`pPlacedAddress` and `vkMapMemory2` will return VK_SUCCESS. If it cannot place the map at the requested address for any reason, the memory object is left unmapped and `vkMapMemory2` will return VK_ERROR_MEMORY_MAP_FAILED.

The `VkMemoryMapPlacedInfoEXT` structure is defined as:

    // Provided by VK_EXT_map_memory_placed
    typedef struct VkMemoryMapPlacedInfoEXT {
        VkStructureType    sType;
        const void*        pNext;
        void*              pPlacedAddress;
    } VkMemoryMapPlacedInfoEXT;

## Members

- `sType` is a VkStructureType value identifying this structure.

- `pNext` is `NULL` or a pointer to a structure extending this structure.

- `pPlacedAddress` is the virtual address at which to place the address. If `VkMemoryMapInfo`::`flags` does not contain VK_MEMORY_MAP_PLACED_BIT_EXT, this value is ignored.

## Description

Valid Usage

- VUID-VkMemoryMapPlacedInfoEXT-pPlacedAddress-09577
  `pPlacedAddress` must be aligned to an integer multiple of `VkPhysicalDeviceMapMemoryPlacedPropertiesEXT`::`minPlacedMemoryMapAlignment`

- VUID-VkMemoryMapPlacedInfoEXT-pPlacedAddress-09578
  The address range specified by `pPlacedAddress` and `VkMemoryMapInfo`::`size` must not overlap any existing Vulkan memory object mapping

Valid Usage (Implicit)

- VUID-VkMemoryMapPlacedInfoEXT-sType-sType
  `sType` must be VK_STRUCTURE_TYPE_MEMORY_MAP_PLACED_INFO_EXT

Structure Chaining

Extends the structure

  - VkMemoryMapInfo

## See Also

VK_EXT_map_memory_placed, VkStructureType

## Document Notes

For more information, see the Vulkan Specification.

This page is extracted from the Vulkan Specification. Fixes and changes should be made to the Specification, not directly.

## Copyright

Copyright 2014-2026 The Khronos Group Inc.

SPDX-License-Identifier: CC-BY-4.0