Should I get vulkan for AMD igpu?

Hey there! I don’t have much idea regarding how graphic APIs work, that’s why this question. There are multiple resources that claim that Vulkan provides much more performance than openGL. Now, I use an AMD APU (Ryzen 5 3500U with vega 8 igpu).

So should I install the vulkan-icd-loader and vulkan-radeon packages? or just keep everything as it is? if my system won’t really benefit much from it, in terms of performance gain, then I would probably pass on the installation.

If I understood something incorrectly regarding these, I would also be happy with a link regarding these concepts.

Thanks

System:
  Kernel: 6.2.13-arch1-1 arch: x86_64 bits: 64 compiler: gcc v: 12.2.1
    Desktop: KDE Plasma v: 5.27.4 tk: Qt v: 5.15.9 wm: kwin_wayland vt: 2
    dm: SDDM Distro: EndeavourOS base: Arch Linux
Machine:
  Type: Laptop System: HP product: HP 255 G8 Notebook PC
    v: Type1ProductConfigId serial: <superuser required> Chassis: type: 10
    serial: <superuser required>
  Mobo: HP model: 87D1 v: 38.25 serial: <superuser required> UEFI: Insyde
    v: F.31 date: 06/16/2022
Battery:
  ID-1: BAT1 charge: 12.0 Wh (32.2%) condition: 37.3/40.9 Wh (91.3%)
    volts: 11.0 min: 11.3 model: Hewlett-Packard PABAS0241231 type: Li-ion
    serial: <filter> status: discharging
CPU:
  Info: quad core model: AMD Ryzen 5 3500U with Radeon Vega Mobile Gfx
    bits: 64 type: MT MCP smt: enabled arch: Zen/Zen+ note: check rev: 1 cache:
    L1: 384 KiB L2: 2 MiB L3: 4 MiB
  Speed (MHz): avg: 1417 high: 2100 min/max: 1400/2100 boost: enabled cores:
    1: 1206 2: 2100 3: 1333 4: 1275 5: 1400 6: 1400 7: 1400 8: 1222
    bogomips: 33546
  Flags: avx avx2 ht lm nx pae sse sse2 sse3 sse4_1 sse4_2 sse4a ssse3 svm
Graphics:
  Device-1: AMD Picasso/Raven 2 [Radeon Vega Series / Radeon Mobile Series]
    vendor: Hewlett-Packard driver: amdgpu v: kernel arch: GCN-5 pcie:
    speed: 8 GT/s lanes: 16 ports: active: eDP-1 empty: HDMI-A-1
    bus-ID: 04:00.0 chip-ID: 1002:15d8 class-ID: 0300 temp: 39.0 C
  Device-2: Luxvisions Innotech HP TrueVision HD Camera type: USB
    driver: uvcvideo bus-ID: 3-2.1:3 chip-ID: 30c9:0035 class-ID: fe01
    serial: <filter>
  Display: wayland server: X.org v: 1.21.1.8 with: Xwayland v: 23.1.1
    compositor: kwin_wayland driver: X: loaded: amdgpu unloaded: modesetting
    alternate: fbdev,vesa dri: radeonsi gpu: amdgpu display-ID: 0
  Monitor-1: eDP-1 res: 1366x768 size: N/A modes: N/A
  API: OpenGL v: 4.6 Mesa 23.0.3 renderer: AMD Radeon Vega 8 Graphics
    (raven LLVM 15.0.7 DRM 3.49 6.2.13-arch1-1) direct-render: Yes
Audio:
  Device-1: AMD Raven/Raven2/Fenghuang HDMI/DP Audio vendor: Hewlett-Packard
    driver: snd_hda_intel v: kernel pcie: speed: 8 GT/s lanes: 16
    bus-ID: 04:00.1 chip-ID: 1002:15de class-ID: 0403
  Device-2: AMD ACP/ACP3X/ACP6x Audio Coprocessor vendor: Hewlett-Packard
    driver: snd_pci_acp3x v: kernel pcie: speed: 8 GT/s lanes: 16
    bus-ID: 04:00.5 chip-ID: 1022:15e2 class-ID: 0480
  Device-3: AMD Family 17h/19h HD Audio vendor: Hewlett-Packard
    driver: snd_hda_intel v: kernel pcie: speed: 8 GT/s lanes: 16
    bus-ID: 04:00.6 chip-ID: 1022:15e3 class-ID: 0403
  API: ALSA v: k6.2.13-arch1-1 status: kernel-api
  Server-1: PipeWire v: 0.3.70 status: active with: 1: pipewire-pulse
    status: active 2: wireplumber status: active 3: pipewire-alsa type: plugin
    4: pw-jack type: plugin
Network:
  Device-1: Realtek RTL8111/8168/8411 PCI Express Gigabit Ethernet
    vendor: Hewlett-Packard driver: r8169 v: kernel pcie: speed: 2.5 GT/s
    lanes: 1 port: 3000 bus-ID: 01:00.0 chip-ID: 10ec:8168 class-ID: 0200
  IF: eno1 state: down mac: <filter>
  Device-2: Realtek RTL8822CE 802.11ac PCIe Wireless Network Adapter
    vendor: Hewlett-Packard driver: rtw_8822ce v: N/A pcie: speed: 2.5 GT/s
    lanes: 1 port: 2000 bus-ID: 02:00.0 chip-ID: 10ec:c822 class-ID: 0280
  IF: wlan0 state: up mac: <filter>
Bluetooth:
  Device-1: Realtek Bluetooth Radio type: USB driver: btusb v: 0.8
    bus-ID: 3-2.3:4 chip-ID: 0bda:b00c class-ID: e001 serial: <filter>
  Report: rfkill ID: hci0 rfk-id: 0 state: down bt-service: disabled
    rfk-block: hardware: no software: no address: see --recommends
Drives:
  Local Storage: total: 1.6 TiB used: 38.77 GiB (2.4%)
  ID-1: /dev/nvme0n1 model: 256GB NVME EVM size: 238.47 GiB speed: 31.6 Gb/s
    lanes: 4 type: SSD serial: <filter> rev: U0914A0L temp: 40.9 C scheme: GPT
  ID-2: /dev/sda vendor: Western Digital model: WD10SPZX-60Z10T1
    size: 931.51 GiB speed: 6.0 Gb/s type: HDD rpm: 5400 serial: <filter>
    rev: 1A05 scheme: GPT
  ID-3: /dev/sdb type: USB vendor: Samsung model: PSSD T7 size: 465.76 GiB
    type: SSD serial: <filter> scheme: MBR
Partition:
  ID-1: / size: 222.53 GiB used: 38.55 GiB (17.3%) fs: btrfs dev: /dev/dm-1
    mapped: luks-26c3b8b0-03df-46b6-ba52-fa29ceb6ddcb
  ID-2: /home size: 222.53 GiB used: 38.55 GiB (17.3%) fs: btrfs
    dev: /dev/dm-1 mapped: luks-26c3b8b0-03df-46b6-ba52-fa29ceb6ddcb
  ID-3: /var/log size: 222.53 GiB used: 38.55 GiB (17.3%) fs: btrfs
    dev: /dev/dm-1 mapped: luks-26c3b8b0-03df-46b6-ba52-fa29ceb6ddcb
Swap:
  ID-1: swap-1 type: partition size: 14.96 GiB used: 0 KiB (0.0%) priority: -2
    dev: /dev/dm-0 mapped: luks-e3135738-110a-480e-83bc-ba816d45bde4
Sensors:
  System Temperatures: cpu: 40.4 C mobo: N/A gpu: amdgpu temp: 40.0 C
  Fan Speeds (RPM): N/A
Repos:
  Packages: 1059 pm: pacman pkgs: 1032 pm: flatpak pkgs: 27
  Active pacman repo servers in: /etc/pacman.d/chaotic-mirrorlist
    1: https://cdn-mirror.chaotic.cx/$repo/$arch
    2: https://geo-mirror.chaotic.cx/$repo/$arch
    3: https://au-mirror.chaotic.cx/$repo/$arch
    4: https://au-2-mirror.chaotic.cx/$repo/$arch
    5: https://br-mirror.chaotic.cx/$repo/$arch
    6: https://br-2-mirror.chaotic.cx/$repo/$arch
    7: https://br-3-mirror.chaotic.cx/$repo/$arch
    8: https://br-4-mirror.chaotic.cx/$repo/$arch
    9: https://bg-mirror.chaotic.cx/$repo/$arch
    10: https://ca-mirror.chaotic.cx/$repo/$arch
    11: https://ca-2-mirror.chaotic.cx/$repo/$arch
    12: https://ca-3-mirror.chaotic.cx/$repo/$arch
    13: https://ch-2-mirror.chaotic.cx/$repo/$arch
    14: https://cl-mirror.chaotic.cx/$repo/$arch
    15: https://cl-2-mirror.chaotic.cx/$repo/$arch
    16: https://fr-1-mirror.chaotic.cx/$repo/$arch
    17: https://fr-2-mirror.chaotic.cx/$repo/$arch
    18: https://fr-3-mirror.chaotic.cx/$repo/$arch
    19: https://de-mirror.chaotic.cx/$repo/$arch
    20: https://de-2-mirror.chaotic.cx/$repo/$arch
    21: https://de-3-mirror.chaotic.cx/$repo/$arch
    22: https://de-4-mirror.chaotic.cx/$repo/$arch
    23: https://de-5-mirror.chaotic.cx/$repo/$arch
    24: https://de-6-mirror.chaotic.cx/$repo/$arch
    25: https://gr-mirror.chaotic.cx/$repo/$arch
    26: https://in-mirror.chaotic.cx/$repo/$arch
    27: https://in-2-mirror.chaotic.cx/$repo/$arch
    28: https://in-3-mirror.chaotic.cx/$repo/$arch
    29: https://in-4-mirror.chaotic.cx/$repo/$arch
    30: https://in-5-mirror.chaotic.cx/$repo/$arch
    31: https://in-6-mirror.chaotic.cx/$repo/$arch
    32: https://in-7-mirror.chaotic.cx/$repo/$arch
    33: https://il-mirror.chaotic.cx/$repo/$arch
    34: https://it-mirror.chaotic.cx/$repo/$arch
    35: https://jp-mirror.chaotic.cx/$repo/$arch
    36: https://jp-2-mirror.chaotic.cx/$repo/$arch
    37: https://kr-mirror.chaotic.cx/$repo/$arch
    38: https://kr-2-mirror.chaotic.cx/$repo/$arch
    39: https://kr-3-mirror.chaotic.cx/$repo/$arch
    40: https://mx-mirror.chaotic.cx/$repo/$arch
    41: https://mx-2-mirror.chaotic.cx/$repo/$arch
    42: https://nl-mirror.chaotic.cx/$repo/$arch
    43: https://sa-mirror.chaotic.cx/$repo/$arch
    44: https://za-mirror.chaotic.cx/$repo/$arch
    45: https://es-mirror.chaotic.cx/$repo/$arch
    46: https://es-2-mirror.chaotic.cx/$repo/$arch
    47: https://es-3-mirror.chaotic.cx/$repo/$arch
    48: https://se-mirror.chaotic.cx/$repo/$arch
    49: https://ae-mirror.chaotic.cx/$repo/$arch
    50: https://ae-2-mirror.chaotic.cx/$repo/$arch
    51: https://ae-3-mirror.chaotic.cx/$repo/$arch
    52: https://uk-mirror.chaotic.cx/$repo/$arch
    53: https://uk-2-mirror.chaotic.cx/$repo/$arch
    54: https://uk-3-mirror.chaotic.cx/$repo/$arch
    55: https://us-az-mirror.chaotic.cx/$repo/$arch
    56: https://us-az-2-mirror.chaotic.cx/$repo/$arch
    57: https://us-ca-mirror.chaotic.cx/$repo/$arch
    58: https://us-fl-mirror.chaotic.cx/$repo/$arch
    59: https://us-mi-mirror.chaotic.cx/$repo/$arch
    60: https://us-mi-2-mirror.chaotic.cx/$repo/$arch
    61: https://us-ny-mirror.chaotic.cx/$repo/$arch
    62: https://us-tx-mirror.chaotic.cx/$repo/$arch
    63: https://us-ut-mirror.chaotic.cx/$repo/$arch
    64: https://us-va-mirror.chaotic.cx/$repo/$arch
  Active pacman repo servers in: /etc/pacman.d/endeavouros-mirrorlist
    1: https://md.mirrors.hacktegic.com/endeavouros/repo/$repo/$arch
    2: https://mirror.moson.org/endeavouros/repo/$repo/$arch
    3: https://mirror.alpix.eu/endeavouros/repo/$repo/$arch
    4: https://mirror.albony.xyz/endeavouros/repo/$repo/$arch
    5: https://ftp.acc.umu.se/mirror/endeavouros/repo/$repo/$arch
    6: https://mirror.freedif.org/EndeavourOS/repo/$repo/$arch
    7: https://mirror.jordanrey.me/endeavouros/repo/$repo/$arch
    8: https://mirror.linux.pizza/endeavouros/repo/$repo/$arch
    9: https://ca.gate.endeavouros.com/endeavouros/repo/$repo/$arch
    10: https://mirror.archlinux.tw/EndeavourOS/repo/$repo/$arch
    11: https://mirrors.tuna.tsinghua.edu.cn/endeavouros/repo/$repo/$arch
    12: https://mirror.funami.tech/endeavouros/repo/$repo/$arch
    13: https://de.freedif.org/EndeavourOS/repo/$repo/$arch
    14: https://fastmirror.pp.ua/endeavouros/repo/$repo/$arch
  Active pacman repo servers in: /etc/pacman.d/mirrorlist
    1: https://mirrors.nxtgen.com/archlinux-mirror/$repo/os/$arch
Info:
  Processes: 271 Uptime: 18m wakeups: 1 Memory: 13.6 GiB
  used: 2.22 GiB (16.3%) Init: systemd v: 253 default: graphical Compilers:
  gcc: 12.2.1 Shell: fish v: 3.6.1 running-in: kitty inxi: 3.3.26

it does not hurt to install vulkan-radeon and lib32-vulkan-radeon and yes, Vulkan has better performance compared to OpenGL in most cases.

Hint: If you have amdvlk and lib32-amdvlk installed, remove them, they are worse.

3 Likes

Thanks for the reply!
So, if i install vulkan-radeon, do I also need to configure something manually to make the system use vulkan API, or will everything get configured automatically?

Should work out of the box. If you are playing games you need the lib32-vulkan-radeon package, too. Also check the arch wiki some more information.

1 Like

Thanks! All clear now

This topic was automatically closed 2 days after the last reply. New replies are no longer allowed.