bug 13038: Remove support for multiple GPUs
authorCourtney Goeltzenleuchter <courtney@LunarG.com>
Thu, 18 Jun 2015 23:01:41 +0000 (17:01 -0600)
committerCourtney Goeltzenleuchter <courtney@LunarG.com>
Wed, 24 Jun 2015 21:38:03 +0000 (15:38 -0600)
https://cvs.khronos.org/bugzilla/show_bug.cgi?id=13038

13 files changed:
demos/vulkaninfo.c
icd/nulldrv/nulldrv.c
include/vkLayer.h
include/vulkan.h
layers/mem_tracker.cpp
layers/param_checker.cpp
layers/screenshot.cpp
loader/gpa_helper.h
loader/loader.c
loader/loader.h
loader/table_ops.h
loader/trampoline.c
vulkan.py

index 69f46aad2913841c7e2d472c8a12911bfa2da61f..ca1e22c3a595836b6b26a0f91be963a0b84fe182 100644 (file)
@@ -151,7 +151,6 @@ static const char *vk_result_string(VkResult err)
     STR(VK_ERROR_BUILDING_COMMAND_BUFFER);
     STR(VK_ERROR_MEMORY_NOT_BOUND);
     STR(VK_ERROR_INCOMPATIBLE_QUEUE);
-    STR(VK_ERROR_NOT_SHAREABLE);
 #undef STR
     default: return "UNKNOWN_RESULT";
     }
@@ -632,44 +631,6 @@ app_dev_dump(const struct app_dev *dev)
     }
 }
 
-static void app_gpu_dump_multi_compat(const struct app_gpu *gpu, const struct app_gpu *other,
-        const VkPhysicalDeviceCompatibilityInfo *info)
-{
-    printf("VkPhysicalDeviceCompatibilityInfo[GPU%d]\n", other->id);
-
-#define TEST(info, b) printf(#b " = %u\n", (bool) (info->compatibilityFlags & VK_PHYSICAL_DEVICE_COMPATIBILITY_ ##b## _BIT))
-    TEST(info, FEATURES);
-    TEST(info, IQ_MATCH);
-    TEST(info, PEER_TRANSFER);
-    TEST(info, SHARED_MEMORY);
-    TEST(info, SHARED_SYNC);
-    TEST(info, SHARED_DEVICE0_DISPLAY);
-    TEST(info, SHARED_DEVICE1_DISPLAY);
-#undef TEST
-}
-
-static void app_gpu_multi_compat(struct app_gpu *gpus, uint32_t gpu_count)
-{
-        VkResult err;
-        uint32_t i, j;
-
-        for (i = 0; i < gpu_count; i++) {
-                for (j = 0; j < gpu_count; j++) {
-                        VkPhysicalDeviceCompatibilityInfo info;
-
-                        if (i == j)
-                                continue;
-
-                        err = vkGetMultiDeviceCompatibility(gpus[i].obj,
-                                        gpus[j].obj, &info);
-                        if (err)
-                                ERR_EXIT(err);
-
-                        app_gpu_dump_multi_compat(&gpus[i], &gpus[j], &info);
-                }
-        }
-}
-
 #ifdef _WIN32
 #define PRINTF_SIZE_T_SPECIFIER    "%Iu"
 #else
@@ -807,8 +768,6 @@ int main(int argc, char **argv)
         printf("\n\n");
     }
 
-    app_gpu_multi_compat(gpus, gpu_count);
-
     for (i = 0; i < gpu_count; i++)
         app_gpu_destroy(&gpus[i]);
 
index b29730a8ec038b33fffce3d16463b7adfc4a496e..553033e6c10048a58c95322009c678fa85a433f8 100644 (file)
@@ -1569,25 +1569,6 @@ VkResult VKAPI vkGetPhysicalDeviceExtensionInfo(
     return VK_SUCCESS;
 }
 
-ICD_EXPORT VkResult VKAPI vkGetMultiDeviceCompatibility(
-    VkPhysicalDevice                            gpu0_,
-    VkPhysicalDevice                            gpu1_,
-    VkPhysicalDeviceCompatibilityInfo*                 pInfo)
-{
-    NULLDRV_LOG_FUNC;
-    return VK_SUCCESS;
-}
-
-ICD_EXPORT VkResult VKAPI vkOpenPeerImage(
-    VkDevice                                  device,
-    const VkPeerImageOpenInfo*             pOpenInfo,
-    VkImage*                                  pImage,
-    VkDeviceMemory*                             pMem)
-{
-    NULLDRV_LOG_FUNC;
-    return VK_SUCCESS;
-}
-
 ICD_EXPORT VkResult VKAPI vkCreateImage(
     VkDevice                                  device,
     const VkImageCreateInfo*                pCreateInfo,
@@ -1696,24 +1677,6 @@ ICD_EXPORT VkResult VKAPI vkInvalidateMappedMemoryRanges(
     return VK_SUCCESS;
 }
 
-ICD_EXPORT VkResult VKAPI vkOpenSharedMemory(
-    VkDevice                                  device,
-    const VkMemoryOpenInfo*                 pOpenInfo,
-    VkDeviceMemory*                             pMem)
-{
-    NULLDRV_LOG_FUNC;
-    return VK_SUCCESS;
-}
-
-ICD_EXPORT VkResult VKAPI vkOpenPeerMemory(
-    VkDevice                                  device,
-    const VkPeerMemoryOpenInfo*            pOpenInfo,
-    VkDeviceMemory*                             pMem)
-{
-    NULLDRV_LOG_FUNC;
-    return VK_SUCCESS;
-}
-
 ICD_EXPORT VkResult VKAPI vkCreateInstance(
     const VkInstanceCreateInfo*             pCreateInfo,
     VkInstance*                               pInstance)
@@ -1927,15 +1890,6 @@ ICD_EXPORT VkResult VKAPI vkQueueSubmit(
    return VK_SUCCESS;
 }
 
-ICD_EXPORT VkResult VKAPI vkOpenSharedSemaphore(
-    VkDevice                                  device,
-    const VkSemaphoreOpenInfo*              pOpenInfo,
-    VkSemaphore*                              pSemaphore)
-{
-    NULLDRV_LOG_FUNC;
-    return VK_SUCCESS;
-}
-
 ICD_EXPORT VkResult VKAPI vkCreateSemaphore(
     VkDevice                                  device,
     const VkSemaphoreCreateInfo*            pCreateInfo,
index 6dcf104815a4ddf90b6caa73152e415dc11b9a6e..865bb640f6c1e291e658f1017a64c6284101137a 100644 (file)
@@ -40,10 +40,6 @@ typedef struct VkLayerDispatchTable_
     PFN_vkUnmapMemory UnmapMemory;
     PFN_vkFlushMappedMemoryRanges FlushMappedMemoryRanges;
     PFN_vkInvalidateMappedMemoryRanges InvalidateMappedMemoryRanges;
-    PFN_vkOpenSharedMemory OpenSharedMemory;
-    PFN_vkOpenSharedSemaphore OpenSharedSemaphore;
-    PFN_vkOpenPeerMemory OpenPeerMemory;
-    PFN_vkOpenPeerImage OpenPeerImage;
     PFN_vkDestroyObject DestroyObject;
     PFN_vkGetObjectInfo GetObjectInfo;
     PFN_vkBindObjectMemory BindObjectMemory;
@@ -150,7 +146,6 @@ typedef struct VkLayerInstanceDispatchTable_
     PFN_vkCreateDevice CreateDevice;
     /* PFN_vkGetGlobalExtensionInfo GetGlobalExtensionInfo; non-dispatchable */
     PFN_vkGetPhysicalDeviceExtensionInfo GetPhysicalDeviceExtensionInfo;
-    PFN_vkGetMultiDeviceCompatibility GetMultiDeviceCompatibility;
     PFN_vkDbgCreateMsgCallback DbgCreateMsgCallback;
     PFN_vkDbgDestroyMsgCallback DbgDestroyMsgCallback;
     PFN_vkDbgStringCallback DbgStringCallback;
index cdea6f336a0f9c4efb2e1bdeb5c86ef7ad2c25a7..bb40adfebd825f68c7c9b590ed4b389eec1a279e 100644 (file)
@@ -33,7 +33,7 @@
 #include "vk_platform.h"
 
 // Vulkan API version supported by this file
-#define VK_API_VERSION VK_MAKE_VERSION(0, 104, 0)
+#define VK_API_VERSION VK_MAKE_VERSION(0, 105, 0)
 
 #ifdef __cplusplus
 extern "C"
@@ -787,53 +787,50 @@ typedef enum VkStructureType_
     VK_STRUCTURE_TYPE_APPLICATION_INFO                      = 0,
     VK_STRUCTURE_TYPE_DEVICE_CREATE_INFO                    = 1,
     VK_STRUCTURE_TYPE_MEMORY_ALLOC_INFO                     = 2,
-    VK_STRUCTURE_TYPE_MEMORY_OPEN_INFO                      = 3,
-    VK_STRUCTURE_TYPE_PEER_MEMORY_OPEN_INFO                 = 4,
-//    VK_STRUCTURE_TYPE_BUFFER_VIEW_ATTACH_INFO               = 5,
-//    VK_STRUCTURE_TYPE_IMAGE_VIEW_ATTACH_INFO                = 6,
-    VK_STRUCTURE_TYPE_IMAGE_VIEW_CREATE_INFO                = 7,
-    VK_STRUCTURE_TYPE_COLOR_ATTACHMENT_VIEW_CREATE_INFO     = 8,
-    VK_STRUCTURE_TYPE_DEPTH_STENCIL_VIEW_CREATE_INFO        = 9,
-    VK_STRUCTURE_TYPE_SHADER_CREATE_INFO                    = 10,
-    VK_STRUCTURE_TYPE_COMPUTE_PIPELINE_CREATE_INFO          = 11,
-    VK_STRUCTURE_TYPE_SAMPLER_CREATE_INFO                   = 12,
-    VK_STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_CREATE_INFO     = 13,
-    VK_STRUCTURE_TYPE_DYNAMIC_VP_STATE_CREATE_INFO          = 14,
-    VK_STRUCTURE_TYPE_DYNAMIC_RS_STATE_CREATE_INFO          = 15,
-    VK_STRUCTURE_TYPE_DYNAMIC_CB_STATE_CREATE_INFO          = 16,
-    VK_STRUCTURE_TYPE_DYNAMIC_DS_STATE_CREATE_INFO          = 17,
-    VK_STRUCTURE_TYPE_CMD_BUFFER_CREATE_INFO                = 18,
-    VK_STRUCTURE_TYPE_EVENT_CREATE_INFO                     = 19,
-    VK_STRUCTURE_TYPE_FENCE_CREATE_INFO                     = 20,
-    VK_STRUCTURE_TYPE_SEMAPHORE_CREATE_INFO                 = 21,
-    VK_STRUCTURE_TYPE_SEMAPHORE_OPEN_INFO                   = 22,
-    VK_STRUCTURE_TYPE_QUERY_POOL_CREATE_INFO                = 23,
-    VK_STRUCTURE_TYPE_PIPELINE_SHADER_STAGE_CREATE_INFO     = 24,
-    VK_STRUCTURE_TYPE_GRAPHICS_PIPELINE_CREATE_INFO         = 25,
-    VK_STRUCTURE_TYPE_PIPELINE_VERTEX_INPUT_STATE_CREATE_INFO = 26,
-    VK_STRUCTURE_TYPE_PIPELINE_IA_STATE_CREATE_INFO         = 27,
-    VK_STRUCTURE_TYPE_PIPELINE_TESS_STATE_CREATE_INFO       = 28,
-    VK_STRUCTURE_TYPE_PIPELINE_VP_STATE_CREATE_INFO         = 29,
-    VK_STRUCTURE_TYPE_PIPELINE_RS_STATE_CREATE_INFO         = 30,
-    VK_STRUCTURE_TYPE_PIPELINE_MS_STATE_CREATE_INFO         = 31,
-    VK_STRUCTURE_TYPE_PIPELINE_CB_STATE_CREATE_INFO         = 32,
-    VK_STRUCTURE_TYPE_PIPELINE_DS_STATE_CREATE_INFO         = 33,
-    VK_STRUCTURE_TYPE_IMAGE_CREATE_INFO                     = 34,
-    VK_STRUCTURE_TYPE_BUFFER_CREATE_INFO                    = 35,
-    VK_STRUCTURE_TYPE_BUFFER_VIEW_CREATE_INFO               = 36,
-    VK_STRUCTURE_TYPE_FRAMEBUFFER_CREATE_INFO               = 37,
-    VK_STRUCTURE_TYPE_CMD_BUFFER_BEGIN_INFO                 = 38,
-    VK_STRUCTURE_TYPE_CMD_BUFFER_GRAPHICS_BEGIN_INFO        = 39,
-    VK_STRUCTURE_TYPE_RENDER_PASS_CREATE_INFO               = 40,
-    VK_STRUCTURE_TYPE_MEMORY_BARRIER                        = 41,
-    VK_STRUCTURE_TYPE_BUFFER_MEMORY_BARRIER                 = 42,
-    VK_STRUCTURE_TYPE_IMAGE_MEMORY_BARRIER                  = 43,
-    VK_STRUCTURE_TYPE_DESCRIPTOR_POOL_CREATE_INFO           = 44,
-    VK_STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET                  = 46,
-    VK_STRUCTURE_TYPE_COPY_DESCRIPTOR_SET                   = 47,
-    VK_STRUCTURE_TYPE_INSTANCE_CREATE_INFO                  = 48,
-    VK_STRUCTURE_TYPE_PIPELINE_LAYOUT_CREATE_INFO           = 49,
-    VK_STRUCTURE_TYPE_EXTENSION_PROPERTIES                  = 50,
+//    VK_STRUCTURE_TYPE_BUFFER_VIEW_ATTACH_INFO               = 3,
+//    VK_STRUCTURE_TYPE_IMAGE_VIEW_ATTACH_INFO                = 4,
+    VK_STRUCTURE_TYPE_IMAGE_VIEW_CREATE_INFO                = 5,
+    VK_STRUCTURE_TYPE_COLOR_ATTACHMENT_VIEW_CREATE_INFO     = 6,
+    VK_STRUCTURE_TYPE_DEPTH_STENCIL_VIEW_CREATE_INFO        = 7,
+    VK_STRUCTURE_TYPE_SHADER_CREATE_INFO                    = 8,
+    VK_STRUCTURE_TYPE_COMPUTE_PIPELINE_CREATE_INFO          = 9,
+    VK_STRUCTURE_TYPE_SAMPLER_CREATE_INFO                   = 10,
+    VK_STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_CREATE_INFO     = 11,
+    VK_STRUCTURE_TYPE_DYNAMIC_VP_STATE_CREATE_INFO          = 12,
+    VK_STRUCTURE_TYPE_DYNAMIC_RS_STATE_CREATE_INFO          = 13,
+    VK_STRUCTURE_TYPE_DYNAMIC_CB_STATE_CREATE_INFO          = 14,
+    VK_STRUCTURE_TYPE_DYNAMIC_DS_STATE_CREATE_INFO          = 15,
+    VK_STRUCTURE_TYPE_CMD_BUFFER_CREATE_INFO                = 16,
+    VK_STRUCTURE_TYPE_EVENT_CREATE_INFO                     = 17,
+    VK_STRUCTURE_TYPE_FENCE_CREATE_INFO                     = 18,
+    VK_STRUCTURE_TYPE_SEMAPHORE_CREATE_INFO                 = 19,
+    VK_STRUCTURE_TYPE_QUERY_POOL_CREATE_INFO                = 20,
+    VK_STRUCTURE_TYPE_PIPELINE_SHADER_STAGE_CREATE_INFO     = 21,
+    VK_STRUCTURE_TYPE_GRAPHICS_PIPELINE_CREATE_INFO         = 22,
+    VK_STRUCTURE_TYPE_PIPELINE_VERTEX_INPUT_STATE_CREATE_INFO = 23,
+    VK_STRUCTURE_TYPE_PIPELINE_IA_STATE_CREATE_INFO         = 24,
+    VK_STRUCTURE_TYPE_PIPELINE_TESS_STATE_CREATE_INFO       = 25,
+    VK_STRUCTURE_TYPE_PIPELINE_VP_STATE_CREATE_INFO         = 26,
+    VK_STRUCTURE_TYPE_PIPELINE_RS_STATE_CREATE_INFO         = 27,
+    VK_STRUCTURE_TYPE_PIPELINE_MS_STATE_CREATE_INFO         = 28,
+    VK_STRUCTURE_TYPE_PIPELINE_CB_STATE_CREATE_INFO         = 29,
+    VK_STRUCTURE_TYPE_PIPELINE_DS_STATE_CREATE_INFO         = 30,
+    VK_STRUCTURE_TYPE_IMAGE_CREATE_INFO                     = 31,
+    VK_STRUCTURE_TYPE_BUFFER_CREATE_INFO                    = 32,
+    VK_STRUCTURE_TYPE_BUFFER_VIEW_CREATE_INFO               = 33,
+    VK_STRUCTURE_TYPE_FRAMEBUFFER_CREATE_INFO               = 34,
+    VK_STRUCTURE_TYPE_CMD_BUFFER_BEGIN_INFO                 = 35,
+    VK_STRUCTURE_TYPE_CMD_BUFFER_GRAPHICS_BEGIN_INFO        = 36,
+    VK_STRUCTURE_TYPE_RENDER_PASS_CREATE_INFO               = 37,
+    VK_STRUCTURE_TYPE_MEMORY_BARRIER                        = 38,
+    VK_STRUCTURE_TYPE_BUFFER_MEMORY_BARRIER                 = 39,
+    VK_STRUCTURE_TYPE_IMAGE_MEMORY_BARRIER                  = 40,
+    VK_STRUCTURE_TYPE_DESCRIPTOR_POOL_CREATE_INFO           = 41,
+    VK_STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET                  = 42,
+    VK_STRUCTURE_TYPE_COPY_DESCRIPTOR_SET                   = 43,
+    VK_STRUCTURE_TYPE_INSTANCE_CREATE_INFO                  = 44,
+    VK_STRUCTURE_TYPE_PIPELINE_LAYOUT_CREATE_INFO           = 45,
+    VK_STRUCTURE_TYPE_EXTENSION_PROPERTIES                  = 46,
 
     VK_ENUM_RANGE(STRUCTURE_TYPE, APPLICATION_INFO, EXTENSION_PROPERTIES)
 } VkStructureType;
@@ -924,8 +921,7 @@ typedef enum VkResult_
     VK_ERROR_BUILDING_COMMAND_BUFFER                        = -(0x0000001E),
     VK_ERROR_MEMORY_NOT_BOUND                               = -(0x0000001F),
     VK_ERROR_INCOMPATIBLE_QUEUE                             = -(0x00000020),
-    VK_ERROR_NOT_SHAREABLE                                  = -(0x00000021),
-    VK_ERROR_MISSING_EXTENSION_DEPENDENCY                   = -(0x00000022),
+    VK_ERROR_MISSING_EXTENSION_DEPENDENCY                   = -(0x00000021),
 
     VK_MAX_ENUM(RESULT)
 } VkResult;
@@ -935,10 +931,6 @@ typedef enum VkResult_
 
 // Device creation flags
 typedef VkFlags VkDeviceCreateFlags;
-typedef enum VkDeviceCreateFlagBits_
-{
-    VK_DEVICE_CREATE_MULTI_DEVICE_IQ_MATCH_BIT              = VK_BIT(0),
-} VkDeviceCreateFlagBits;
 
 // Queue capabilities
 typedef VkFlags VkQueueFlags;
@@ -962,7 +954,6 @@ typedef enum VkMemoryPropertyFlagBits_
     VK_MEMORY_PROPERTY_HOST_UNCACHED_BIT                    = VK_BIT(2),    // Memory should not be cached by the host
     VK_MEMORY_PROPERTY_HOST_WRITE_COMBINED_BIT              = VK_BIT(3),    // Memory should support host write combining
     VK_MEMORY_PROPERTY_PREFER_HOST_LOCAL                    = VK_BIT(4),    // If set, prefer host access
-    VK_MEMORY_PROPERTY_SHAREABLE_BIT                        = VK_BIT(5),
 } VkMemoryPropertyFlagBits;
 
 // Memory output flags passed to resource transition commands
@@ -1011,8 +1002,7 @@ typedef enum VkBufferUsageFlagBits_
 typedef VkFlags VkBufferCreateFlags;
 typedef enum VkBufferCreateFlagBits_
 {
-    VK_BUFFER_CREATE_SHAREABLE_BIT                          = VK_BIT(0),    // Buffer should be shareable
-    VK_BUFFER_CREATE_SPARSE_BIT                             = VK_BIT(1),    // Buffer should support sparse backing
+    VK_BUFFER_CREATE_SPARSE_BIT                             = VK_BIT(0),    // Buffer should support sparse backing
 } VkBufferCreateFlagBits;
 
 // Shader stage flags
@@ -1048,10 +1038,9 @@ typedef VkFlags VkImageCreateFlags;
 typedef enum VkImageCreateFlagBits_
 {
     VK_IMAGE_CREATE_INVARIANT_DATA_BIT                      = VK_BIT(0),
-    VK_IMAGE_CREATE_SHAREABLE_BIT                           = VK_BIT(1),    // Image should be shareable
-    VK_IMAGE_CREATE_SPARSE_BIT                              = VK_BIT(2),    // Image should support sparse backing
-    VK_IMAGE_CREATE_MUTABLE_FORMAT_BIT                      = VK_BIT(3),    // Allows image views to have different format than the base image
-    VK_IMAGE_CREATE_CUBE_COMPATIBLE_BIT                     = VK_BIT(4),    // Allows creating image views with cube type from the created image
+    VK_IMAGE_CREATE_SPARSE_BIT                              = VK_BIT(1),    // Image should support sparse backing
+    VK_IMAGE_CREATE_MUTABLE_FORMAT_BIT                      = VK_BIT(2),    // Allows image views to have different format than the base image
+    VK_IMAGE_CREATE_CUBE_COMPATIBLE_BIT                     = VK_BIT(3),    // Allows creating image views with cube type from the created image
 } VkImageCreateFlagBits;
 
 // Depth-stencil view creation flags
@@ -1089,10 +1078,6 @@ typedef enum VkFenceCreateFlagBits_
 
 // Semaphore creation flags
 typedef VkFlags VkSemaphoreCreateFlags;
-typedef enum VkSemaphoreCreateFlagBits_
-{
-    VK_SEMAPHORE_CREATE_SHAREABLE_BIT                       = VK_BIT(0),
-} VkSemaphoreCreateFlagBits;
 
 // Format capability flags
 typedef VkFlags VkFormatFeatureFlags;
@@ -1129,19 +1114,6 @@ typedef enum VkQueryResultFlagBits_
     VK_QUERY_RESULT_PARTIAL_BIT                             = VK_BIT(3),   // Copy the partial results of the query even if the final results aren't available
 } VkQueryResultFlagBits;
 
-// Physical device compatibility flags
-typedef VkFlags VkPhysicalDeviceCompatibilityFlags;
-typedef enum VkPhysicalDeviceCompatibilityFlagBits_
-{
-    VK_PHYSICAL_DEVICE_COMPATIBILITY_FEATURES_BIT           = VK_BIT(0),
-    VK_PHYSICAL_DEVICE_COMPATIBILITY_IQ_MATCH_BIT           = VK_BIT(1),
-    VK_PHYSICAL_DEVICE_COMPATIBILITY_PEER_TRANSFER_BIT      = VK_BIT(2),
-    VK_PHYSICAL_DEVICE_COMPATIBILITY_SHARED_MEMORY_BIT      = VK_BIT(3),
-    VK_PHYSICAL_DEVICE_COMPATIBILITY_SHARED_SYNC_BIT        = VK_BIT(4),
-    VK_PHYSICAL_DEVICE_COMPATIBILITY_SHARED_DEVICE0_DISPLAY_BIT = VK_BIT(5),
-    VK_PHYSICAL_DEVICE_COMPATIBILITY_SHARED_DEVICE1_DISPLAY_BIT = VK_BIT(6),
-} VkPhysicalDeviceCompatibilityFlagBits;
-
 // Shader creation flags
 typedef VkFlags VkShaderCreateFlags;
 
@@ -1260,11 +1232,6 @@ typedef struct VkPhysicalDevicePerformance_
     float                                       pixelsPerClock;
 } VkPhysicalDevicePerformance;
 
-typedef struct VkPhysicalDeviceCompatibilityInfo_
-{
-    VkPhysicalDeviceCompatibilityFlags          compatibilityFlags;
-} VkPhysicalDeviceCompatibilityInfo;
-
 typedef struct VkExtensionProperties_
 {
     VkStructureType                             sType;                              // Type of structure. Should be VK_STRUCTURE_TYPE_EXTENSION_PROPERTIES
@@ -1349,20 +1316,6 @@ typedef struct VkMemoryAllocInfo_
     VkMemoryPropertyFlags                       memProps;                   // Memory property flags
 } VkMemoryAllocInfo;
 
-typedef struct VkMemoryOpenInfo_
-{
-    VkStructureType                             sType;                      // Must be VK_STRUCTURE_TYPE_MEMORY_OPEN_INFO
-    const void*                                 pNext;                      // Pointer to next structure
-    VkDeviceMemory                              sharedMem;
-} VkMemoryOpenInfo;
-
-typedef struct VkPeerMemoryOpenInfo_
-{
-    VkStructureType                             sType;                      // Must be VK_STRUCTURE_TYPE_PEER_MEMORY_OPEN_INFO
-    const void*                                 pNext;                      // Pointer to next structure
-    VkDeviceMemory                              originalMem;
-} VkPeerMemoryOpenInfo;
-
 typedef struct VkMemoryRequirements_
 {
     VkDeviceSize                                size;                       // Specified in bytes
@@ -1516,11 +1469,6 @@ typedef struct VkImageCreateInfo_
     VkImageCreateFlags                          flags;                      // Image creation flags
 } VkImageCreateInfo;
 
-typedef struct VkPeerImageOpenInfo_
-{
-    VkImage                                     originalImage;
-} VkPeerImageOpenInfo;
-
 typedef struct VkSubresourceLayout_
 {
     VkDeviceSize                                offset;                 // Specified in bytes
@@ -2007,13 +1955,6 @@ typedef struct VkSemaphoreCreateInfo_
     VkSemaphoreCreateFlags                      flags;      // Semaphore creation flags
 } VkSemaphoreCreateInfo;
 
-typedef struct VkSemaphoreOpenInfo_
-{
-    VkStructureType                             sType;      // Must be VK_STRUCTURE_TYPE_SEMAPHORE_OPEN_INFO
-    const void*                                 pNext;      // Pointer to next structure
-    VkSemaphore                                 sharedSemaphore;
-} VkSemaphoreOpenInfo;
-
 typedef struct VkQueryPoolCreateInfo_
 {
     VkStructureType                             sType;              // Must be VK_STRUCTURE_TYPE_QUERY_POOL_CREATE_INFO
@@ -2084,11 +2025,6 @@ typedef VkResult (VKAPI *PFN_vkMapMemory)(VkDevice device, VkDeviceMemory mem, V
 typedef VkResult (VKAPI *PFN_vkUnmapMemory)(VkDevice device, VkDeviceMemory mem);
 typedef VkResult (VKAPI *PFN_vkFlushMappedMemoryRanges)(VkDevice device, uint32_t memRangeCount, const VkMappedMemoryRange* pMemRanges);
 typedef VkResult (VKAPI *PFN_vkInvalidateMappedMemoryRanges)(VkDevice device, uint32_t memRangeCount, const VkMappedMemoryRange* pMemRanges);
-typedef VkResult (VKAPI *PFN_vkGetMultiDeviceCompatibility)(VkPhysicalDevice physicalDevice0, VkPhysicalDevice physicalDevice1, VkPhysicalDeviceCompatibilityInfo* pInfo);
-typedef VkResult (VKAPI *PFN_vkOpenSharedMemory)(VkDevice device, const VkMemoryOpenInfo* pOpenInfo, VkDeviceMemory* pMem);
-typedef VkResult (VKAPI *PFN_vkOpenSharedSemaphore)(VkDevice device, const VkSemaphoreOpenInfo* pOpenInfo, VkSemaphore* pSemaphore);
-typedef VkResult (VKAPI *PFN_vkOpenPeerMemory)(VkDevice device, const VkPeerMemoryOpenInfo* pOpenInfo, VkDeviceMemory* pMem);
-typedef VkResult (VKAPI *PFN_vkOpenPeerImage)(VkDevice device, const VkPeerImageOpenInfo* pOpenInfo, VkImage* pImage, VkDeviceMemory* pMem);
 typedef VkResult (VKAPI *PFN_vkDestroyObject)(VkDevice device, VkObjectType objType, VkObject object);
 typedef VkResult (VKAPI *PFN_vkGetObjectInfo)(VkDevice device, VkObjectType objType, VkObject object, VkObjectInfoType infoType, size_t* pDataSize, void* pData);
 typedef VkResult (VKAPI *PFN_vkBindObjectMemory)(VkDevice device, VkObjectType objType, VkObject object, VkDeviceMemory mem, VkDeviceSize offset);
@@ -2282,34 +2218,6 @@ VkResult VKAPI vkInvalidateMappedMemoryRanges(
     uint32_t                                    memRangeCount,
     const VkMappedMemoryRange*                  pMemRanges);
 
-// Multi-device functions
-
-VkResult VKAPI vkGetMultiDeviceCompatibility(
-    VkPhysicalDevice                            physicalDevice0,
-    VkPhysicalDevice                            physicalDevice1,
-    VkPhysicalDeviceCompatibilityInfo*          pInfo);
-
-VkResult VKAPI vkOpenSharedMemory(
-    VkDevice                                    device,
-    const VkMemoryOpenInfo*                     pOpenInfo,
-    VkDeviceMemory*                             pMem);
-
-VkResult VKAPI vkOpenSharedSemaphore(
-    VkDevice                                    device,
-    const VkSemaphoreOpenInfo*                  pOpenInfo,
-    VkSemaphore*                                pSemaphore);
-
-VkResult VKAPI vkOpenPeerMemory(
-    VkDevice                                    device,
-    const VkPeerMemoryOpenInfo*                 pOpenInfo,
-    VkDeviceMemory*                             pMem);
-
-VkResult VKAPI vkOpenPeerImage(
-    VkDevice                                    device,
-    const VkPeerImageOpenInfo*                  pOpenInfo,
-    VkImage*                                    pImage,
-    VkDeviceMemory*                             pMem);
-
 // Generic API object functions
 
 VkResult VKAPI vkDestroyObject(
index f77215f2443b8c41ad9042e5abdccd4d2f50cb92..52b2e781998610733c10a0182ef952bb44f6b1d8 100644 (file)
@@ -1177,37 +1177,6 @@ VK_LAYER_EXPORT VkResult VKAPI vkUnmapMemory(
     return result;
 }
 
-VK_LAYER_EXPORT VkResult VKAPI vkOpenSharedMemory(
-    VkDevice                device,
-    const VkMemoryOpenInfo *pOpenInfo,
-    VkDeviceMemory         *pMem)
-{
-    // TODO : Track this
-    VkResult result = get_dispatch_table(mem_tracker_device_table_map, device)->OpenSharedMemory(device, pOpenInfo, pMem);
-    return result;
-}
-
-VK_LAYER_EXPORT VkResult VKAPI vkOpenPeerMemory(
-    VkDevice                    device,
-    const VkPeerMemoryOpenInfo *pOpenInfo,
-    VkDeviceMemory             *pMem)
-{
-    // TODO : Track this
-    VkResult result = get_dispatch_table(mem_tracker_device_table_map, device)->OpenPeerMemory(device, pOpenInfo, pMem);
-    return result;
-}
-
-VK_LAYER_EXPORT VkResult VKAPI vkOpenPeerImage(
-    VkDevice                   device,
-    const VkPeerImageOpenInfo *pOpenInfo,
-    VkImage                   *pImage,
-    VkDeviceMemory            *pMem)
-{
-    // TODO : Track this
-    VkResult result = get_dispatch_table(mem_tracker_device_table_map, device)->OpenPeerImage(device, pOpenInfo, pImage, pMem);
-    return result;
-}
-
 VK_LAYER_EXPORT VkResult VKAPI vkDestroyObject(
     VkDevice     device,
     VkObjectType objType,
@@ -2236,12 +2205,6 @@ VK_LAYER_EXPORT void* VKAPI vkGetDeviceProcAddr(
         return (void*) vkMapMemory;
     if (!strcmp(funcName, "vkUnmapMemory"))
         return (void*) vkUnmapMemory;
-    if (!strcmp(funcName, "vkOpenSharedMemory"))
-        return (void*) vkOpenSharedMemory;
-    if (!strcmp(funcName, "vkOpenPeerMemory"))
-        return (void*) vkOpenPeerMemory;
-    if (!strcmp(funcName, "vkOpenPeerImage"))
-        return (void*) vkOpenPeerImage;
     if (!strcmp(funcName, "vkDestroyObject"))
         return (void*) vkDestroyObject;
     if (!strcmp(funcName, "vkGetObjectInfo"))
index a0e1fde194df3ae52f70709c45ca692f9f12bd7b..4d05ba17aae07c1b1b447e3497863c1cf9164523 100644 (file)
@@ -475,73 +475,6 @@ VK_LAYER_EXPORT VkResult VKAPI vkInvalidateMappedMemoryRanges(
     return result;
 }
 
-VK_LAYER_EXPORT VkResult VKAPI vkGetMultiDeviceCompatibility(VkPhysicalDevice gpu0, VkPhysicalDevice gpu1, VkPhysicalDeviceCompatibilityInfo* pInfo)
-{
-
-    VkResult result = instance_dispatch_table(gpu0)->GetMultiDeviceCompatibility(gpu0, gpu1, pInfo);
-    return result;
-}
-
-VK_LAYER_EXPORT VkResult VKAPI vkOpenSharedMemory(VkDevice device, const VkMemoryOpenInfo* pOpenInfo, VkDeviceMemory* pMem)
-{
-    char str[1024];
-    if (!pOpenInfo) {
-        sprintf(str, "Struct ptr parameter pOpenInfo to function OpenSharedMemory is NULL.");
-        layerCbMsg(VK_DBG_REPORT_INFO_BIT, (VkObjectType) 0, NULL, 0, 1, "PARAMCHECK", str);
-    }
-    else if (!vk_validate_vkmemoryopeninfo(pOpenInfo)) {
-        sprintf(str, "Parameter pOpenInfo to function OpenSharedMemory contains an invalid value.");
-        layerCbMsg(VK_DBG_REPORT_ERROR_BIT, (VkObjectType) 0, NULL, 0, 1, "PARAMCHECK", str);
-    }
-    VkResult result = device_dispatch_table(device)->OpenSharedMemory(device, pOpenInfo, pMem);
-    return result;
-}
-
-VK_LAYER_EXPORT VkResult VKAPI vkOpenSharedSemaphore(VkDevice device, const VkSemaphoreOpenInfo* pOpenInfo, VkSemaphore* pSemaphore)
-{
-    char str[1024];
-    if (!pOpenInfo) {
-        sprintf(str, "Struct ptr parameter pOpenInfo to function OpenSharedSemaphore is NULL.");
-        layerCbMsg(VK_DBG_REPORT_INFO_BIT, (VkObjectType) 0, NULL, 0, 1, "PARAMCHECK", str);
-    }
-    else if (!vk_validate_vksemaphoreopeninfo(pOpenInfo)) {
-        sprintf(str, "Parameter pOpenInfo to function OpenSharedSemaphore contains an invalid value.");
-        layerCbMsg(VK_DBG_REPORT_ERROR_BIT, (VkObjectType) 0, NULL, 0, 1, "PARAMCHECK", str);
-    }
-    VkResult result = device_dispatch_table(device)->OpenSharedSemaphore(device, pOpenInfo, pSemaphore);
-    return result;
-}
-
-VK_LAYER_EXPORT VkResult VKAPI vkOpenPeerMemory(VkDevice device, const VkPeerMemoryOpenInfo* pOpenInfo, VkDeviceMemory* pMem)
-{
-    char str[1024];
-    if (!pOpenInfo) {
-        sprintf(str, "Struct ptr parameter pOpenInfo to function OpenPeerMemory is NULL.");
-        layerCbMsg(VK_DBG_REPORT_INFO_BIT, (VkObjectType) 0, NULL, 0, 1, "PARAMCHECK", str);
-    }
-    else if (!vk_validate_vkpeermemoryopeninfo(pOpenInfo)) {
-        sprintf(str, "Parameter pOpenInfo to function OpenPeerMemory contains an invalid value.");
-        layerCbMsg(VK_DBG_REPORT_ERROR_BIT, (VkObjectType) 0, NULL, 0, 1, "PARAMCHECK", str);
-    }
-    VkResult result = device_dispatch_table(device)->OpenPeerMemory(device, pOpenInfo, pMem);
-    return result;
-}
-
-VK_LAYER_EXPORT VkResult VKAPI vkOpenPeerImage(VkDevice device, const VkPeerImageOpenInfo* pOpenInfo, VkImage* pImage, VkDeviceMemory* pMem)
-{
-    char str[1024];
-    if (!pOpenInfo) {
-        sprintf(str, "Struct ptr parameter pOpenInfo to function OpenPeerImage is NULL.");
-        layerCbMsg(VK_DBG_REPORT_INFO_BIT, (VkObjectType) 0, NULL, 0, 1, "PARAMCHECK", str);
-    }
-    else if (!vk_validate_vkpeerimageopeninfo(pOpenInfo)) {
-        sprintf(str, "Parameter pOpenInfo to function OpenPeerImage contains an invalid value.");
-        layerCbMsg(VK_DBG_REPORT_ERROR_BIT, (VkObjectType) 0, NULL, 0, 1, "PARAMCHECK", str);
-    }
-    VkResult result = device_dispatch_table(device)->OpenPeerImage(device, pOpenInfo, pImage, pMem);
-    return result;
-}
-
 VK_LAYER_EXPORT VkResult VKAPI vkDestroyObject(VkDevice device, VkObjectType objType, VkObject object)
 {
     VkResult result = device_dispatch_table(device)->DestroyObject(device, objType, object);
@@ -1985,14 +1918,6 @@ static inline void* layer_intercept_proc(const char *name)
         return (void*) vkFlushMappedMemoryRanges;
     if (!strcmp(name, "InvalidateMappedMemoryRanges"))
         return (void*) vkInvalidateMappedMemoryRanges;
-    if (!strcmp(name, "OpenSharedMemory"))
-        return (void*) vkOpenSharedMemory;
-    if (!strcmp(name, "OpenSharedSemaphore"))
-        return (void*) vkOpenSharedSemaphore;
-    if (!strcmp(name, "OpenPeerMemory"))
-        return (void*) vkOpenPeerMemory;
-    if (!strcmp(name, "OpenPeerImage"))
-        return (void*) vkOpenPeerImage;
     if (!strcmp(name, "DestroyObject"))
         return (void*) vkDestroyObject;
     if (!strcmp(name, "GetObjectInfo"))
@@ -2177,8 +2102,6 @@ static inline void* layer_intercept_instance_proc(const char *name)
         return (void*) vkGetGlobalExtensionInfo;
     if (!strcmp(name, "GetPhysicalDeviceExtensionInfo"))
         return (void*) vkGetPhysicalDeviceExtensionInfo;
-    if (!strcmp(name, "GetMultiDeviceCompatibility"))
-        return (void*) vkGetMultiDeviceCompatibility;
 
     return NULL;
 }
index 82c8d79b0f065ab7373dabc95d7d9d51d26f4256..19b1d4aa8073d534feb1fae0ee39f8710a216d6e 100644 (file)
@@ -140,8 +140,7 @@ static void writePPM( const char *filename, VkImage image1)
         (VK_MEMORY_PROPERTY_HOST_VISIBLE_BIT |
             VK_MEMORY_PROPERTY_HOST_UNCACHED_BIT |
             VK_MEMORY_PROPERTY_HOST_WRITE_COMBINED_BIT |
-            VK_MEMORY_PROPERTY_PREFER_HOST_LOCAL |
-            VK_MEMORY_PROPERTY_SHAREABLE_BIT)
+            VK_MEMORY_PROPERTY_PREFER_HOST_LOCAL)
     };
     const VkCmdBufferCreateInfo createCommandBufferInfo = {
         VK_STRUCTURE_TYPE_CMD_BUFFER_CREATE_INFO,
index 20b0b51927608bef59d5bafda6727397556fffbc..52afa9bd5f93b3f9a030f99da1ed08068c0d2fb6 100644 (file)
@@ -71,16 +71,6 @@ static inline void* globalGetProcAddr(const char *name)
         return (void*) vkFlushMappedMemoryRanges;
     if (!strcmp(name, "InvalidateMappedMemoryRanges"))
         return (void*) vkInvalidateMappedMemoryRanges;
-    if (!strcmp(name, "GetMultiDeviceCompatibility"))
-        return (void*) vkGetMultiDeviceCompatibility;
-    if (!strcmp(name, "OpenSharedMemory"))
-        return (void*) vkOpenSharedMemory;
-    if (!strcmp(name, "OpenSharedSemaphore"))
-        return (void*) vkOpenSharedSemaphore;
-    if (!strcmp(name, "OpenPeerMemory"))
-        return (void*) vkOpenPeerMemory;
-    if (!strcmp(name, "OpenPeerImage"))
-        return (void*) vkOpenPeerImage;
     if (!strcmp(name, "DestroyObject"))
         return (void*) vkDestroyObject;
     if (!strcmp(name, "GetObjectInfo"))
index 1c6e3fb31cf09cef5587352b43b38c2c034fc16c..57956aef799ffc84fb152e8135447c1763c8a653 100644 (file)
@@ -90,7 +90,6 @@ const VkLayerInstanceDispatchTable instance_disp = {
     .GetPhysicalDeviceInfo = loader_GetPhysicalDeviceInfo,
     .CreateDevice = loader_CreateDevice,
     .GetPhysicalDeviceExtensionInfo = loader_GetPhysicalDeviceExtensionInfo,
-    .GetMultiDeviceCompatibility = loader_GetMultiDeviceCompatibility,
     .DbgCreateMsgCallback = loader_DbgCreateMsgCallback,
     .DbgDestroyMsgCallback = loader_DbgDestroyMsgCallback,
 };
@@ -721,7 +720,6 @@ static void loader_icd_init_entrys(struct loader_icd *icd,
     LOOKUP(GetPhysicalDeviceInfo);
     LOOKUP(CreateDevice);
     LOOKUP(GetPhysicalDeviceExtensionInfo);
-    LOOKUP(GetMultiDeviceCompatibility);
     LOOKUP(DbgCreateMsgCallback);
     LOOKUP(DbgDestroyMsgCallback);
 #undef LOOKUP
@@ -1920,18 +1918,3 @@ VkResult loader_GetPhysicalDeviceExtensionInfo(
 
     return VK_SUCCESS;
 }
-
-VkResult loader_GetMultiDeviceCompatibility(
-        VkPhysicalDevice                        gpu0,
-        VkPhysicalDevice                        gpu1,
-        VkPhysicalDeviceCompatibilityInfo*      pInfo)
-{
-    uint32_t gpu_index;
-    struct loader_icd *icd = loader_get_icd(gpu0, &gpu_index);
-    VkResult res = VK_ERROR_INITIALIZATION_FAILED;
-
-    if (icd->GetMultiDeviceCompatibility)
-        res = icd->GetMultiDeviceCompatibility(gpu0, gpu1, pInfo);
-
-    return res;
-}
index dfb04b087f96e989ec06f338ce08c2544de01253..72a21d4f4009560a1c8bd41a0fb1eecd2151b8f4 100644 (file)
@@ -119,7 +119,6 @@ struct loader_icd {
     PFN_vkGetPhysicalDeviceInfo GetPhysicalDeviceInfo;
     PFN_vkCreateDevice CreateDevice;
     PFN_vkGetPhysicalDeviceExtensionInfo GetPhysicalDeviceExtensionInfo;
-    PFN_vkGetMultiDeviceCompatibility GetMultiDeviceCompatibility;
     PFN_vkDbgCreateMsgCallback DbgCreateMsgCallback;
     PFN_vkDbgDestroyMsgCallback DbgDestroyMsgCallback;
     /*
@@ -339,11 +338,6 @@ VkResult loader_CreateDevice(
         const VkDeviceCreateInfo*               pCreateInfo,
         VkDevice*                               pDevice);
 
-VkResult loader_GetMultiDeviceCompatibility(
-        VkPhysicalDevice                        gpu0,
-        VkPhysicalDevice                        gpu1,
-        VkPhysicalDeviceCompatibilityInfo*      pInfo);
-
 /* helper function definitions */
 bool has_vk_extension_property(
         const VkExtensionProperties *vk_ext_prop,
index 45f411ed62929b5b0b3af8c8e7375ab6e59f2480..360406a2211ff2d5810e1283c71a0e835ed65aac 100644 (file)
@@ -48,10 +48,6 @@ static inline void loader_init_device_dispatch_table(VkLayerDispatchTable *table
     table->UnmapMemory = (PFN_vkUnmapMemory) gpa(dev, "vkUnmapMemory");
     table->FlushMappedMemoryRanges = (PFN_vkFlushMappedMemoryRanges) gpa(dev, "vkFlushMappedMemoryRanges");
     table->InvalidateMappedMemoryRanges = (PFN_vkInvalidateMappedMemoryRanges) gpa(dev, "vkInvalidateMappedMemoryRanges");
-    table->OpenSharedMemory = (PFN_vkOpenSharedMemory) gpa(dev, "vkOpenSharedMemory");
-    table->OpenSharedSemaphore = (PFN_vkOpenSharedSemaphore) gpa(dev, "vkOpenSharedSemaphore");
-    table->OpenPeerMemory = (PFN_vkOpenPeerMemory) gpa(dev, "vkOpenPeerMemory");
-    table->OpenPeerImage = (PFN_vkOpenPeerImage) gpa(dev, "vkOpenPeerImage");
     table->DestroyObject = (PFN_vkDestroyObject) gpa(dev, "vkDestroyObject");
     table->GetObjectInfo = (PFN_vkGetObjectInfo) gpa(dev, "vkGetObjectInfo");
     table->BindObjectMemory = (PFN_vkBindObjectMemory) gpa(dev, "vkBindObjectMemory");
@@ -178,14 +174,6 @@ static inline void *loader_lookup_device_dispatch_table(
         return (void *) table->FlushMappedMemoryRanges;
     if (!strcmp(name, "InvalidateMappedMemoryRanges"))
         return (void *) table->InvalidateMappedMemoryRanges;
-    if (!strcmp(name, "OpenSharedMemory"))
-        return (void *) table->OpenSharedMemory;
-    if (!strcmp(name, "OpenSharedSemaphore"))
-        return (void *) table->OpenSharedSemaphore;
-    if (!strcmp(name, "OpenPeerMemory"))
-        return (void *) table->OpenPeerMemory;
-    if (!strcmp(name, "OpenPeerImage"))
-        return (void *) table->OpenPeerImage;
     if (!strcmp(name, "DestroyObject"))
         return (void *) table->DestroyObject;
     if (!strcmp(name, "GetObjectInfo"))
@@ -375,7 +363,6 @@ static inline void loader_init_instance_core_dispatch_table(VkLayerInstanceDispa
     table->GetPhysicalDeviceInfo = (PFN_vkGetPhysicalDeviceInfo) gpa(inst, "vkGetPhysicalDeviceInfo");
     table->CreateDevice = (PFN_vkCreateDevice) gpa(inst, "vkCreateDevice");
     table->GetPhysicalDeviceExtensionInfo = (PFN_vkGetPhysicalDeviceExtensionInfo) gpa(inst, "vkGetPhysicalDeviceExtensionInfo");
-    table->GetMultiDeviceCompatibility = (PFN_vkGetMultiDeviceCompatibility) gpa(inst, "vkGetMultiDeviceCompatibility");
 }
 
 static inline void loader_init_instance_extension_dispatch_table(
@@ -409,8 +396,6 @@ static inline void *loader_lookup_instance_dispatch_table(
         return (void *) table->CreateDevice;
     if (!strcmp(name, "GetPhysicalDeviceExtensionInfo"))
         return (void *) table->GetPhysicalDeviceExtensionInfo;
-    if (!strcmp(name, "GetMultiDeviceCompatibility"))
-        return (void *) table->GetMultiDeviceCompatibility;
     if (!strcmp(name, "DbgCreateMsgCallback"))
         return (void *) table->DbgCreateMsgCallback;
     if (!strcmp(name, "DbgDestroyMsgCallback"))
index cee2eac773d48a4e9a9205a4385ab8a0b97de571..c5eb01adf2deb7137865a1f3d68c591438cdf440 100644 (file)
@@ -306,55 +306,6 @@ LOADER_EXPORT VkResult VKAPI vkInvalidateMappedMemoryRanges(VkDevice device, uin
     return disp->InvalidateMappedMemoryRanges(device, memRangeCount, pMemRanges);
 }
 
-LOADER_EXPORT VkResult VKAPI vkGetMultiDeviceCompatibility(VkPhysicalDevice gpu0, VkPhysicalDevice gpu1, VkPhysicalDeviceCompatibilityInfo* pInfo)
-{
-    const VkLayerInstanceDispatchTable *disp;
-    VkResult res;
-
-    disp = loader_get_instance_dispatch(gpu0);
-
-    loader_platform_thread_lock_mutex(&loader_lock);
-    res = disp->GetMultiDeviceCompatibility(gpu0, gpu1, pInfo);
-    loader_platform_thread_unlock_mutex(&loader_lock);
-    return res;
-}
-
-LOADER_EXPORT VkResult VKAPI vkOpenSharedMemory(VkDevice device, const VkMemoryOpenInfo* pOpenInfo, VkDeviceMemory* pMem)
-{
-    const VkLayerDispatchTable *disp;
-
-    disp = loader_get_dispatch(device);
-
-    return disp->OpenSharedMemory(device, pOpenInfo, pMem);
-}
-
-LOADER_EXPORT VkResult VKAPI vkOpenSharedSemaphore(VkDevice device, const VkSemaphoreOpenInfo* pOpenInfo, VkSemaphore* pSemaphore)
-{
-    const VkLayerDispatchTable *disp;
-
-    disp = loader_get_dispatch(device);
-
-    return disp->OpenSharedSemaphore(device, pOpenInfo, pSemaphore);
-}
-
-LOADER_EXPORT VkResult VKAPI vkOpenPeerMemory(VkDevice device, const VkPeerMemoryOpenInfo* pOpenInfo, VkDeviceMemory* pMem)
-{
-    const VkLayerDispatchTable *disp;
-
-    disp = loader_get_dispatch(device);
-
-    return disp->OpenPeerMemory(device, pOpenInfo, pMem);
-}
-
-LOADER_EXPORT VkResult VKAPI vkOpenPeerImage(VkDevice device, const VkPeerImageOpenInfo* pOpenInfo, VkImage* pImage, VkDeviceMemory* pMem)
-{
-    const VkLayerDispatchTable *disp;
-
-    disp = loader_get_dispatch(device);
-
-    return disp->OpenPeerImage(device, pOpenInfo, pImage, pMem);
-}
-
 LOADER_EXPORT VkResult VKAPI vkDestroyObject(VkDevice device, VkObjectType objType, VkObject object)
 {
     const VkLayerDispatchTable *disp;
index 58d4aedf08d6f8b992b3a4af77af6853c7a836c5..8e6fd013e91805ef28d93acbb3749e29fbb16697 100755 (executable)
--- a/vulkan.py
+++ b/vulkan.py
@@ -313,32 +313,6 @@ core = Extension(
              Param("uint32_t", "memRangeCount"),
              Param("const VkMappedMemoryRange*", "pMemRanges")]),
 
-        Proto("VkResult", "GetMultiDeviceCompatibility",
-            [Param("VkPhysicalDevice", "gpu0"),
-             Param("VkPhysicalDevice", "gpu1"),
-             Param("VkPhysicalDeviceCompatibilityInfo*", "pInfo")]),
-
-        Proto("VkResult", "OpenSharedMemory",
-            [Param("VkDevice", "device"),
-             Param("const VkMemoryOpenInfo*", "pOpenInfo"),
-             Param("VkDeviceMemory*", "pMem")]),
-
-        Proto("VkResult", "OpenSharedSemaphore",
-            [Param("VkDevice", "device"),
-             Param("const VkSemaphoreOpenInfo*", "pOpenInfo"),
-             Param("VkSemaphore*", "pSemaphore")]),
-
-        Proto("VkResult", "OpenPeerMemory",
-            [Param("VkDevice", "device"),
-             Param("const VkPeerMemoryOpenInfo*", "pOpenInfo"),
-             Param("VkDeviceMemory*", "pMem")]),
-
-        Proto("VkResult", "OpenPeerImage",
-            [Param("VkDevice", "device"),
-             Param("const VkPeerImageOpenInfo*", "pOpenInfo"),
-             Param("VkImage*", "pImage"),
-             Param("VkDeviceMemory*", "pMem")]),
-
         Proto("VkResult", "DestroyObject",
             [Param("VkDevice", "device"),
              Param("VkObjectType", "objType"),