为啥 vulkan 在集成显卡和 GPU 的系统中报告单个设备?

Posted

技术标签:

【中文标题】为啥 vulkan 在集成显卡和 GPU 的系统中报告单个设备?【英文标题】:Why does vulkan report a single device in a system with an integrated graphics card and a GPU?为什么 vulkan 在集成显卡和 GPU 的系统中报告单个设备? 【发布时间】:2019-07-03 07:07:48 【问题描述】:

在 C++ 中,我正在检查可用设备的数量,如下所示:

uint32_t deviceCount = 0;
vkEnumeratePhysicalDevices(instance, &deviceCount, nullptr);

cout << deviceCount << endl;
vkGetPhysicalDeviceProperties(device, &deviceProperties);
vkGetPhysicalDeviceFeatures(device, &deviceFeatures);

cout << deviceProperties.deviceName << endl;

这是打印出1 Geforce GTX 1070

我的系统有一个 GTX 1070 和一个带有集成显卡的第四代英特尔 5 处理器。据我了解,这对 Vulkan 来说应该足够好了。

那么为什么我的程序只选择 GTX 1070?不应该也能找到集成显卡吗?

编辑:

根据 cpuinfo 的确切模型是:Intel(R) Core(TM) i5-4460 CPU @ 3.20GHz

编辑 2:

我的操作系统是 Arch linux

【问题讨论】:

这取决于 具体 Core i5 模型,不是吗?英特尔“i5”是范围广泛的 CPU/修订版 - 参考。 en.wikipedia.org/wiki/Vulkan_(API) 支持的版本。请注意,在所有 Vulkan 环境中支持 i5-6000+ 系列芯片 (FSVO).. (所以,如果第 4 代 = 4000 系列,那么它太旧了,不受支持,即使集成显卡可能“计算上”能够支持。) 看来这就是答案 什么操作系统? 据我所知,Windows 仅支持 6+ 代 CPU,Linux ATM 仅支持 3+ 代。 【参考方案1】:

默认情况下,如果您有专用 GPU,则台式机的集成 GPU 在 bios 中被禁用,并且不会在系统中显示为设备。

每个 BIOS 供应商的称呼不同,但请尝试查找“IGP ENABLE”或“多显示器支持”。

【讨论】:

以上是关于为啥 vulkan 在集成显卡和 GPU 的系统中报告单个设备?的主要内容,如果未能解决你的问题,请参考以下文章

Vulkan Tutorial 05 物理设备与队列簇

Vulkan Tutorial 05 物理设备与队列簇

为啥我的实际内存容量在系统属性里显示出来的不一样?

GPU是并行计算,CPU是串行计算?为啥这么说?

核心面积最大的显卡?

怎么判断电脑是不是有独立显卡?