1

我的家用电脑是 2012 年末的 Mac Mini,它配备了第三代英特尔 IvyBridge 处理器(出于某种原因只有 Apple 知道的移动型号)。

LunarG SDK 中的“vulkaninfo.app”报告了集成 GPU 上的 4 个队列族,但公开信息显示它应该只有 1 个。发生了什么?


VkQueueFamilyProperties[0]:
===========================
    queueFlags         = GRAPHICS | COMPUTE | TRANSFER
    queueCount         = 1
    timestampValidBits = 64
    minImageTransferGranularity = (1, 1, 1)
    present support    = true

VkQueueFamilyProperties[1]:
===========================
    queueFlags         = GRAPHICS | COMPUTE | TRANSFER
    queueCount         = 1
    timestampValidBits = 64
    minImageTransferGranularity = (1, 1, 1)
    present support    = true

VkQueueFamilyProperties[2]:
===========================
    queueFlags         = GRAPHICS | COMPUTE | TRANSFER
    queueCount         = 1
    timestampValidBits = 64
    minImageTransferGranularity = (1, 1, 1)
    present support    = true

VkQueueFamilyProperties[3]:
===========================
    queueFlags         = GRAPHICS | COMPUTE | TRANSFER
    queueCount         = 1
    timestampValidBits = 64
    minImageTransferGranularity = (1, 1, 1)
    present support    = true

4

1 回答 1

1

在 macOS 中,Metal 设备中没有队列计数或队列系列计数(截至 2019 年 7 月),因此可以创建 1 个或任意数量的队列并充分利用设备。

但是,正如GitHub 问题中所述,一些具有硬连线假设的程序在只有 1 个队列族时会崩溃,因此他们让 MoltenVK 报告 4 个队列族来修复它(请参阅拉取请求 450)。

于 2019-07-21T12:32:01.300 回答