Vulkan
- Vulkan (旧名 "glNext") はオーバーヘッドが少ない、クロスプラットフォームなリアルタイム3次元コンピュータグラフィックス・コンピュート API である。
詳しくは Khronos のウェブサイトを参照してください。
目次
インストール
Vulkan アプリを実行するには vulkan-icd-loader と (32ビットのアプリケーションを実行したい場合は lib32-vulkan-icd-loader も)、使用しているグラフィックカードの Vulkan ドライバーをインストールする必要があります:
- Intel: vulkan-intel (または lib32-vulkan-intel)
- NVIDIA: nvidia (または lib32-nvidia-utils)
- AMD: 3種類の実装があります。これらは複数同時にインストールできます:
- vulkan-radeon (または lib32-vulkan-radeon) - RADV (Mesa プロジェクトの一部)
- amdvlk (または lib32-amdvlk) - AMDVLK Open (AMD によるメンテナンス)
- vulkan-amdgpu-proAUR (または lib32-vulkan-amdgpu-proAUR) - AMVDLK Closed (AMD によるメンテナンス)
他のドライバーはパッケージ化されていないので、手動でインストールしてください:
- PowerVR: https://imgtec.com/vulkan
- Adreno: https://developer.qualcomm.com/software/adreno-gpu-sdk/gpu
Vulkan アプリケーションを開発するには、vulkan-headers も必要になります。また、vulkan-validation-layers および vulkan-tools もインストールすると良いでしょう (vulkaninfo ツールが含まれています)。
検証
システムに現在インストールされている Vulkan 実装を確認するには、次のコマンドを使用します。
$ ls /usr/share/vulkan/icd.d/
To ensure that Vulkan is working with your hardware, install vulkan-tools and use the vulkaninfo
command to pull up relevant information about your system. If you get info about your graphics card, you will know that Vulkan is working.
$ vulkaninfo
You can see https://linuxconfig.org/install-and-test-vulkan-on-linux for more information.
AMD ドライバを切り替える
On AMD systems, it is valid to have multiple Vulkan drivers installed at once, and it may be desirable to switch between them.
環境変数で選択する
As of amdvlk 2021.Q3.4, a new switching logic was implemented which enforces AMDVLK as the default and mandates you either
- set
AMD_VULKAN_ICD=RADV
to switch from the AMDVLK default, - or globally set
DISABLE_LAYER_AMD_SWITCHABLE_GRAPHICS_1=1
to re-enable the ICD loader method below.
When DISABLE_LAYER_AMD_SWITCHABLE_GRAPHICS_1=1
, you can choose your preferred driver by setting the environment variable VK_ICD_FILENAMES
. For example, running Steam with the RADV driver is done by
$ VK_ICD_FILENAMES=/usr/share/vulkan/icd.d/radeon_icd.i686.json:/usr/share/vulkan/icd.d/radeon_icd.x86_64.json steam
To avoid crashes with 32-bit games, it is possible to assign the 32-bit variant and the 64-bit variant to the environment variable.
AMD Vulkan Prefixes で選択する
AMD Vulkan Prefixes is a script for switching between all three Vulkan implementations. Install amd-vulkan-prefixesAUR, and prepend your application with the prefix you want. The executables provided are vk_radv
, vk_amdvlk
, and vk_pro
. For example, to use the AMDVLK Closed drivers:
$ vk_pro command
Vulkan ハードウェアデータベース
ドライバーをインストールしたら、vulkan-caps-viewerAUR を実行することで GPU とドライバーのスペックを vulkan.gpuinfo.org で共有することができます。
トラブルシューティング
Error - vulkan: No DRI3 support
上記のメッセージが表示される場合、以下の内容のファイルを作成して X を再起動してください。Wayland では以下の設定は必要ありません。
/etc/X11/xorg.conf.d/20-intel.conf
Section "Device" Identifier "Intel Graphics" Driver "intel" Option "DRI" "3" EndSection
Nvidia - vulkan が動作せず初期化できない
vulkan-intel がインストールされていないか確認してください。インストールされていると Nvidia の vulkan ドライバーが認識されないことがあります。
あるいは、環境変数 VK_ICD_FILENAMES
を /usr/share/vulkan/icd.d/nvidia_icd.json
に設定してください。
No device for the display GPU found. Are the intel-mesa drivers installed?
環境変数 VK_ICD_FILENAMES に intel_icd と primus_vk_wrapper の両方のセットしてみてください。
export VK_ICD_FILENAMES=/usr/share/vulkan/icd.d/intel_icd.x86_64.json:/usr/share/vulkan/icd.d/primus_vk_wrapper.json