3

我一直想使用 Vulkan,新的图形 API,并且在 Windows 7 上启动并运行没有问题。但是我无法让 Vulkan 在 linux 上工作。当我尝试运行任何 LunarG 示例,甚至我自己的代码时,vkEnumeratePhysicalDevices总是说没有物理设备。这是我的设置:

OS: Ubuntu 16.04 (LTS) [x64]
GPU: Nvidia Geforce GT 730 2GB GDDR5
Driver: NVIDIA Binary driver - version 364.19 from nvidia-364 (open source)
Vulkan SDK: LunarG v1.0.17.0 [ latest version]

我想知道是否有我的 GPU 需要设置环境变量的文件,但我真的不知道。正如我之前所说,这在 Windows 7 上完美运行,但我似乎无法让它在上述配置中运行。我能够使用 LunarG 标准验证层和正确的扩展创建一个实例,但vkEnumeratePhysicalDevices没有找到任何物理设备。它没有给出错误,只是说它找不到任何物理设备。这真的让我很难过,我真的很感激你的帮助。谢谢!

4

2 回答 2

3

根据您的发行版,您可能必须安装该nvidia-utils软件包。有关详细信息,请参阅我的 Vulkan 存储库中的此问题

如果您不是这种情况,请检查 Karl 提到的目录,并检查是否没有其他 ICD(可能来自 Intel)可能会导致问题。如果您使用的是具有双 GPU 的 Optimus 系统,则可能需要显式激活 NVIDIA GPU。

730 应该可以在 Linux 上正常工作,至少从我在数据库中获得的 Linux 硬件报告来看,就像这样

于 2016-07-13T17:39:34.837 回答
0

如果驱动程序安装正确,则不必设置环境变量。

检查安装是否正确的一种方法是查找标识驱动程序的 JSON 文件。例如,nvidia 驱动程序将放置一个名为nvidia_icd.jsonin的文件/etc/vulkan/icd.d//usr/share/vulkan/icd.d/是另一个标准,但不太常见的位置。

您的 GPU 也可能不支持 Vulkan。请务必查看您的 GPU 供应商的网页以确认支持。您可能想直接从供应商的网站下载驱动程序,以获得他们所说的支持 Vulkan 的驱动程序。

您确定使用“其他驱动程序”页面应该为您提供 Vulkan 驱动程序吗?

您可以参考https://vulkan.lunarg.com文档部分中的加载程序文档以获取更多信息。

于 2016-07-13T16:42:52.463 回答