私は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を使用していることがわかります。私のGPUを使用するようにVulkanを設定する方法はありますか?
答え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
それから私のプログラムを実行しましたが、うまくいきました。