Vulcan 在 TTY 上检测 GPU,但在 gnome 上检测不到 GPU

Vulcan 在 TTY 上检测 GPU,但在 gnome 上检测不到 GPU

我使用的是 Debian 11

我有一个通过覆盖 tty1 来工作的程序。因此,当启动我的计算机时,该程序立即运行。这工作正常,但我使用 Gnome 作为我的 GUI 来开发和测试程序。在 Gnome 中运行程序时,我得到:

WARNING: lavapipe is not a conformant vulkan implementation, testing use only.
Segmentation fault

在 tty 输出上运行 vulkaninfo --summary

Devices:
========
GPU0:
        apiVersion         = 420641 (1.2.145)
        driverVersion      = 83898373
        vendorID           = 0x10002
        deviceID           = 0x1508
        deviceType         = PHYSICAL_DEVICE_TYPE_INTEGRATED_GPU
        deviceName         = AMD_RADV_RAVEN *ACO)
        driverID           = DRIVER_ID_MESA_RADV
        driverName         = radv
        driverInfo         = Mesa 20.3.5 (ACO)
        conformanceVersion = 1.2.3.0 

GPU1:
        apiVersion         = 4194306 (1.0.2)
        driverVersion      = 1 (0x0001)
        vendorID           = 0x10005
        deviceID           = 0x0000
        deviceType         = PHYSICAL_DEVICE_TYPE_CPU
        deviceName         = llvmpipe (LLVM 11.0.1, 256 bits)
        driverID           = DRIVER_ID_MESA_LLVMPIPE
        driverName         = llvmpipe
        

但在 gnome 输出上运行 vulkaninfo --summary

Devices:
========
GPU0:
        apiVersion         = 4194306 (1.0.2)
        driverVersion      = 1 (0x0001)
        vendorID           = 0x10005
        deviceID           = 0x0000
        deviceType         = PHYSICAL_DEVICE_TYPE_CPU
        deviceName         = llvmpipe (LLVM 11.0.1, 256 bits)
        driverID           = DRIVER_ID_MESA_LLVMPIPE
        driverName         = llvmpipe
        driverInfo         = Mesa 20.3.5 (LLVM 11.0.1)
        conformanceVersion = 1.0.0.0
        driverInfo         = Mesa 20.3.5 (LLVM 11.0.1)
        conformanceVersion = 1.0.0.0

所以我可以看到在 Gnome 中它只是使用我的 CPU。有没有办法配置 vulkan 也使用我的 GPU?

答案1

所以回答我自己的问题:

我跑了

lspci -k

检查 Gnome 是否识别出我的 GPU,并且我在那里看到了我的 GPU 及其内核驱动程序。

所以我意识到问题可能出在 Vulkan 本身,所以我跑了

ls /usr/share/vulkan/icd.d/

这给了我输出

intel_icd.x86_64.json lvp_icd.x86_64.json radeon_icd.x86_64.json

radeon_icd.x86_64.json是我的 AMD GPU 的可安装客户端驱动程序

然后我跑了

export VK_ICD_FILENAMES=/usr/share/vulkan/icd.d/radeon_icd.x86_64.json

然后运行我的程序并且它起作用了。

相关内容