Gentoo Forums
Gentoo Forums
Gentoo Forums
Quick Search: in
[SOLVED] llvmpipe used instead of amdgpu
View unanswered posts
View posts from last 24 hours
View posts from last 7 days

 
Reply to topic    Gentoo Forums Forum Index Desktop Environments
View previous topic :: View next topic  
Author Message
fomys
n00b
n00b


Joined: 07 May 2019
Posts: 7

PostPosted: Sun Mar 23, 2025 12:57 pm    Post subject: [SOLVED] llvmpipe used instead of amdgpu Reply with quote

Hello,

I struggle to make my brand new installation and gpu working. I have an AMD Radeon RX 7600 XT (GFX1102/Navi33). The current situation is:
  • I have gentoo-kernel-bin installed, and amdgpu is loaded
  • All the firmware are loaded during boot
  • amdgpu driver are installed (I tested amdgpu, amdgpu-pro, amdvlk, amdvlk-bin)
  • the gpu works! (i.e I can run some openCL examples on it)


My gpu seems to work and to be detected by mesa (see eglinfo -B below, the GPU is used for Surfaceless platform, but not for Wayland/X11)

I want to use Sway, and from what I understand, Wayland should work "out of the box" with the GPU.
If I run glxgear or any game, I don't use the GPU according to amdgpu_top.
If I run vkgear (with amdvkl or amdvlk-bin), I have a segfault.

To check if it was only my setup, I also installed plasma, but same, only llvmpipe is used (ok, I have a big CPU and everything is fluid except games, but I also have a big GPU, so I would like to use it :D)

TBH, I don't know what I should do, let me know if you think more information can be useful or if you have any idea of the issue in my setup.

Thanks a lot for any help you can give me!

Outuput of
Code:
inxi -G

Code:
Graphics:
  Device-1: ASPEED Graphics Family driver: ast v: kernel
  Device-2: AMD Navi 33 [Radeon RX 7600/7600 XT/7600M XT/7600S/7700S / PRO
    W7600] driver: amdgpu v: kernel
  Display: wayland server: X.org v: 1.21.1.16 with: Xwayland v: 24.1.6
    compositor: Sway v: 1.10.1 driver: X: loaded: amdgpu,modesetting
    unloaded: radeon dri: radeonsi gpu: amdgpu,ast resolution:
    1: 2560x1440~75Hz
  API: EGL v: 1.5 drivers: kms_swrast,radeonsi,swrast
    platforms: gbm,wayland,x11,surfaceless,device
  API: OpenGL v: 4.6 compat-v: 4.5 vendor: mesa v: 24.3.4 renderer: llvmpipe
    (LLVM 19.1.7 256 bits)
 API: Vulkan v: 1.4.304 drivers: N/A surfaces: N/A


Output of
Code:
eglinfo -B

Code:
GBM platform:
_amdgpu_device_initialize: amdgpu_query_info(ACCEL_WORKING) failed (-13)
amdgpu: amdgpu_device_initialize failed.
EGL API version: 1.5
EGL vendor string: Mesa Project
EGL version string: 1.5
EGL client APIs: OpenGL OpenGL_ES
OpenGL core profile vendor: Mesa
OpenGL core profile renderer: llvmpipe (LLVM 19.1.7, 256 bits)
OpenGL core profile version: 4.5 (Core Profile) Mesa 24.3.4
OpenGL core profile shading language version: 4.50
OpenGL compatibility profile vendor: Mesa
OpenGL compatibility profile renderer: llvmpipe (LLVM 19.1.7, 256 bits)
OpenGL compatibility profile version: 4.5 (Compatibility Profile) Mesa 24.3.4
OpenGL compatibility profile shading language version: 4.50
OpenGL ES profile vendor: Mesa
OpenGL ES profile renderer: llvmpipe (LLVM 19.1.7, 256 bits)
OpenGL ES profile version: OpenGL ES 3.2 Mesa 24.3.4
OpenGL ES profile shading language version: OpenGL ES GLSL ES 3.20

Wayland platform:
EGL API version: 1.5
EGL vendor string: Mesa Project
EGL version string: 1.5
EGL client APIs: OpenGL OpenGL_ES
OpenGL core profile vendor: Mesa
OpenGL core profile renderer: llvmpipe (LLVM 19.1.7, 256 bits)
OpenGL core profile version: 4.5 (Core Profile) Mesa 24.3.4
OpenGL core profile shading language version: 4.50
OpenGL compatibility profile vendor: Mesa
OpenGL compatibility profile renderer: llvmpipe (LLVM 19.1.7, 256 bits)
OpenGL compatibility profile version: 4.5 (Compatibility Profile) Mesa 24.3.4
OpenGL compatibility profile shading language version: 4.50
OpenGL ES profile vendor: Mesa
OpenGL ES profile renderer: llvmpipe (LLVM 19.1.7, 256 bits)
OpenGL ES profile version: OpenGL ES 3.2 Mesa 24.3.4
OpenGL ES profile shading language version: OpenGL ES GLSL ES 3.20

X11 platform:
EGL API version: 1.5
EGL vendor string: Mesa Project
EGL version string: 1.5
EGL client APIs: OpenGL OpenGL_ES
OpenGL core profile vendor: Mesa
OpenGL core profile renderer: llvmpipe (LLVM 19.1.7, 256 bits)
OpenGL core profile version: 4.5 (Core Profile) Mesa 24.3.4
OpenGL core profile shading language version: 4.50
OpenGL compatibility profile vendor: Mesa
OpenGL compatibility profile renderer: llvmpipe (LLVM 19.1.7, 256 bits)
OpenGL compatibility profile version: 4.5 (Compatibility Profile) Mesa 24.3.4
OpenGL compatibility profile shading language version: 4.50
OpenGL ES profile vendor: Mesa
OpenGL ES profile renderer: llvmpipe (LLVM 19.1.7, 256 bits)
OpenGL ES profile version: OpenGL ES 3.2 Mesa 24.3.4
OpenGL ES profile shading language version: OpenGL ES GLSL ES 3.20

Surfaceless platform:
EGL API version: 1.5
EGL vendor string: Mesa Project
EGL version string: 1.5
EGL client APIs: OpenGL OpenGL_ES
OpenGL core profile vendor: AMD
OpenGL core profile renderer: AMD Radeon RX 7600 XT (radeonsi, navi33, LLVM 19.1.7, DRM 3.60, 6.12.16-gentoo-dist)
OpenGL core profile version: 4.6 (Core Profile) Mesa 24.3.4
OpenGL core profile shading language version: 4.60
OpenGL compatibility profile vendor: AMD
OpenGL compatibility profile renderer: AMD Radeon RX 7600 XT (radeonsi, navi33, LLVM 19.1.7, DRM 3.60, 6.12.16-gentoo-dist)
OpenGL compatibility profile version: 4.6 (Compatibility Profile) Mesa 24.3.4
OpenGL compatibility profile shading language version: 4.60
OpenGL ES profile vendor: AMD
OpenGL ES profile renderer: AMD Radeon RX 7600 XT (radeonsi, navi33, LLVM 19.1.7, DRM 3.60, 6.12.16-gentoo-dist)
OpenGL ES profile version: OpenGL ES 3.2 Mesa 24.3.4
OpenGL ES profile shading language version: OpenGL ES GLSL ES 3.20

Device platform:
Device #0:

Platform Device platform:
EGL API version: 1.5
EGL vendor string: Mesa Project
EGL version string: 1.5
EGL client APIs: OpenGL OpenGL_ES
OpenGL core profile vendor: AMD
OpenGL core profile renderer: AMD Radeon RX 7600 XT (radeonsi, navi33, LLVM 19.1.7, DRM 3.60, 6.12.16-gentoo-dist)
OpenGL core profile version: 4.6 (Core Profile) Mesa 24.3.4
OpenGL core profile shading language version: 4.60
OpenGL compatibility profile vendor: AMD
OpenGL compatibility profile renderer: AMD Radeon RX 7600 XT (radeonsi, navi33, LLVM 19.1.7, DRM 3.60, 6.12.16-gentoo-dist)
OpenGL compatibility profile version: 4.6 (Compatibility Profile) Mesa 24.3.4
OpenGL compatibility profile shading language version: 4.60
OpenGL ES profile vendor: AMD
OpenGL ES profile renderer: AMD Radeon RX 7600 XT (radeonsi, navi33, LLVM 19.1.7, DRM 3.60, 6.12.16-gentoo-dist)
OpenGL ES profile version: OpenGL ES 3.2 Mesa 24.3.4
OpenGL ES profile shading language version: OpenGL ES GLSL ES 3.20

Device #1:

Platform Device platform:
EGL API version: 1.5
EGL vendor string: Mesa Project
EGL version string: 1.5
EGL client APIs: OpenGL OpenGL_ES
OpenGL core profile vendor: Mesa
OpenGL core profile renderer: llvmpipe (LLVM 19.1.7, 256 bits)
OpenGL core profile version: 4.5 (Core Profile) Mesa 24.3.4
OpenGL core profile shading language version: 4.50
OpenGL compatibility profile vendor: Mesa
OpenGL compatibility profile renderer: llvmpipe (LLVM 19.1.7, 256 bits)
OpenGL compatibility profile version: 4.5 (Compatibility Profile) Mesa 24.3.4
OpenGL compatibility profile shading language version: 4.50
OpenGL ES profile vendor: Mesa
OpenGL ES profile renderer: llvmpipe (LLVM 19.1.7, 256 bits)
OpenGL ES profile version: OpenGL ES 3.2 Mesa 24.3.4
OpenGL ES profile shading language version: OpenGL ES GLSL ES 3.20


Last edited by fomys on Mon Mar 24, 2025 5:49 pm; edited 1 time in total
Back to top
View user's profile Send private message
Zucca
Moderator
Moderator


Joined: 14 Jun 2007
Posts: 4002
Location: Rasi, Finland

PostPosted: Sun Mar 23, 2025 6:03 pm    Post subject: Reply with quote

Ok. This is getting interesting. Because there was the almost same problem with nouveau drivers too.
I'm running my main laptop with amdgpu. I'd like to test if this problems concerns me too.

I'm in the middle of a long update process, so I cannot test this right away, since I don't have eglinfo command.
I'll report back after I've done my tests on my machines.
_________________
..: Zucca :..

My gentoo installs:
init=/sbin/openrc-init
-systemd -logind -elogind seatd

Quote:
I am NaN! I am a man!
Back to top
View user's profile Send private message
keekkenen
n00b
n00b


Joined: 05 Oct 2024
Posts: 52

PostPosted: Sun Mar 23, 2025 6:14 pm    Post subject: Reply with quote

I have some different output about display compositor and API renderer (AMD in my case).
Code:
Graphics:
  Device-1: AMD Navi 32 [Radeon RX 7700 XT / 7800 XT] driver: amdgpu v: kernel
  Device-2: Logitech StreamCam
    driver: hid-generic,snd-usb-audio,usbhid,uvcvideo type: USB
  Display: wayland server: X.org v: 1.21.1.16 with: Xwayland v: 24.1.6
    compositor: kwin_wayland driver: X: loaded: amdgpu dri: radeonsi gpu: amdgpu
    resolution: 1: 3440x1440 2: 2560x1440
  API: EGL v: 1.5 drivers: radeonsi,swrast
    platforms: gbm,wayland,x11,surfaceless,device
  API: OpenGL v: 4.6 compat-v: 4.5 vendor: amd mesa v: 24.3.4 renderer: AMD
    Radeon RX 7800 XT (radeonsi navi32 LLVM 19.1.7 DRM 3.60
    6.12.16-gentoo-gentoo-dist)
  API: Vulkan v: 1.4.304 drivers: N/A surfaces: xcb,xlib,wayland

_________________
7950x3d / x670e MSI Tomagawk / Sapphire RX 7800XT 16Gb / G.Skill 64Gb 5600 / A-Data Legend 960 2Tb (x2), A-Data SX8200PNP 256Gb
Back to top
View user's profile Send private message
Zucca
Moderator
Moderator


Joined: 14 Jun 2007
Posts: 4002
Location: Rasi, Finland

PostPosted: Sun Mar 23, 2025 8:34 pm    Post subject: Reply with quote

eglinfo -B | egrep 'renderer:|platform:|^Device':
_amdgpu_device_initialize: amdgpu_query_info(ACCEL_WORKING) failed (-13)
amdgpu: amdgpu_device_initialize failed.
GBM platform:
OpenGL core profile renderer: llvmpipe (LLVM 19.1.7, 256 bits)
OpenGL compatibility profile renderer: llvmpipe (LLVM 19.1.7, 256 bits)
OpenGL ES profile renderer: llvmpipe (LLVM 19.1.7, 256 bits)
Wayland platform:
OpenGL core profile renderer: AMD Radeon Vega 8 Graphics (radeonsi, raven, LLVM 19.1.7, DRM 3.49, 6.1.118-NBLK-WAX9X)
OpenGL compatibility profile renderer: AMD Radeon Vega 8 Graphics (radeonsi, raven, LLVM 19.1.7, DRM 3.49, 6.1.118-NBLK-WAX9X)
OpenGL ES profile renderer: AMD Radeon Vega 8 Graphics (radeonsi, raven, LLVM 19.1.7, DRM 3.49, 6.1.118-NBLK-WAX9X)
X11 platform:
OpenGL core profile renderer: AMD Radeon Vega 8 Graphics (radeonsi, raven, LLVM 19.1.7, DRM 3.49, 6.1.118-NBLK-WAX9X)
OpenGL compatibility profile renderer: AMD Radeon Vega 8 Graphics (radeonsi, raven, LLVM 19.1.7, DRM 3.49, 6.1.118-NBLK-WAX9X)
OpenGL ES profile renderer: AMD Radeon Vega 8 Graphics (radeonsi, raven, LLVM 19.1.7, DRM 3.49, 6.1.118-NBLK-WAX9X)
Surfaceless platform:
OpenGL core profile renderer: AMD Radeon Vega 8 Graphics (radeonsi, raven, LLVM 19.1.7, DRM 3.49, 6.1.118-NBLK-WAX9X)
OpenGL compatibility profile renderer: AMD Radeon Vega 8 Graphics (radeonsi, raven, LLVM 19.1.7, DRM 3.49, 6.1.118-NBLK-WAX9X)
OpenGL ES profile renderer: AMD Radeon Vega 8 Graphics (radeonsi, raven, LLVM 19.1.7, DRM 3.49, 6.1.118-NBLK-WAX9X)
Device platform:
Device #0:
Platform Device platform:
OpenGL core profile renderer: AMD Radeon Vega 8 Graphics (radeonsi, raven, LLVM 19.1.7, DRM 3.49, 6.1.118-NBLK-WAX9X)
OpenGL compatibility profile renderer: AMD Radeon Vega 8 Graphics (radeonsi, raven, LLVM 19.1.7, DRM 3.49, 6.1.118-NBLK-WAX9X)
OpenGL ES profile renderer: AMD Radeon Vega 8 Graphics (radeonsi, raven, LLVM 19.1.7, DRM 3.49, 6.1.118-NBLK-WAX9X)
Device #1:
Platform Device platform:
OpenGL core profile renderer: llvmpipe (LLVM 19.1.7, 256 bits)
OpenGL compatibility profile renderer: llvmpipe (LLVM 19.1.7, 256 bits)
OpenGL ES profile renderer: llvmpipe (LLVM 19.1.7, 256 bits)
inxi -G:
Graphics:
  Device-1: AMD Picasso/Raven 2 [Radeon Vega Series / Radeon Mobile Series]
    driver: amdgpu v: kernel
  Device-2: IMC Networks ov9734_azurewave_camera driver: uvcvideo type: USB
  Display: wayland server: X.org v: 1.21.1.16 with: Xwayland v: 24.1.6
    compositor: wayfire v: 0.9.0-unknown driver: gpu: amdgpu
    resolution: 1920x1080~60Hz
  API: EGL v: 1.5 drivers: kms_swrast,radeonsi,swrast
    platforms: gbm,wayland,x11,surfaceless,device
  API: OpenGL v: 4.6 compat-v: 4.5 vendor: mesa v: 24.3.4 note: glxinfo
    missing (EGL sourced) renderer: llvmpipe (LLVM 19.1.7 256 bits), AMD
    Radeon Vega 8 Graphics (radeonsi raven LLVM 19.1.7 DRM 3.49
    6.1.118-NBLK-WAX9X)
Looks like my system does have hardware acceleration on wayland. I even get the same error.

Please paste the output of
Code:
equery u mesa

_________________
..: Zucca :..

My gentoo installs:
init=/sbin/openrc-init
-systemd -logind -elogind seatd

Quote:
I am NaN! I am a man!
Back to top
View user's profile Send private message
fomys
n00b
n00b


Joined: 07 May 2019
Posts: 7

PostPosted: Sun Mar 23, 2025 10:00 pm    Post subject: Reply with quote

(zink was an attempt to use opengl on vulkan, to see if it can solve the issue, but sadly no)

Code:
fomys@fomys-pc ~ $ equery u mesa
[ Legend : U - final flag setting for installation]
[        : I - package is installed with flag     ]
[ Colors : set, unset                             ]
 * Found these USE flags for media-libs/mesa-24.3.4-r1:
 U I
 + + X                    : Add support for X11
 - - abi_x86_32           : 32-bit (x86) libraries
 + + cpu_flags_x86_sse2   : Use the SSE2 instruction set
 - - d3d9                 : Enable Direct 3D9 API through Nine state tracker. Can be used
                            together with patched wine.
 - - debug                : Enable extra debug codepaths, like asserts and extra output. If
                            you want to get meaningful backtraces see https://wiki.gentoo.or
                            g/wiki/Project:Quality_Assurance/Backtraces
 + + llvm                 : Enable LLVM backend for Gallium3D.
 - - llvm_slot_15         : Use LLVM 15.
 - - llvm_slot_16         : Use LLVM 16.
 - - llvm_slot_17         : Use LLVM 17.
 - - llvm_slot_18         : Use LLVM 18.
 + + llvm_slot_19         : Use LLVM 19.
 + + lm-sensors           : Enable Gallium HUD lm-sensors support.
 + + opencl               : Enable the Rusticl Gallium OpenCL state tracker.
 - - osmesa               : Build the Mesa library for off-screen rendering.
 + + proprietary-codecs   : Enable codecs for patent-encumbered audio and video formats.
 - - test                 : Enable dependencies and/or preparations necessary to run tests
                            (usually controlled by FEATURES=test but can be toggled
                            independently)
 - - unwind               : Add support for call stack unwinding and function name
                            resolution
 - - vaapi                : Enable Video Acceleration API for hardware decoding
 - - valgrind             : Enable annotations for accuracy. May slow down runtime slightly.
                            Safe to use even if not currently using dev-debug/valgrind
 - - vdpau                : Enable the VDPAU acceleration interface for the Gallium3D Video
                            Layer.
 - - video_cards_d3d12    : VIDEO_CARDS seeting to build driver for Microsoft WSL video
                            cards
 - - video_cards_intel    : VIDEO_CARDS setting to build driver for Intel video cards
 - - video_cards_lavapipe : VIDEO_CARDS setting to build Vulkan software rasterizer using
                            LLVMpipe
 - - video_cards_nouveau  : VIDEO_CARDS setting to build reverse-engineered driver for
                            nvidia cards
 - - video_cards_nvk      : VIDEO_CARDS setting to build nouveau vulkan driver for nvidia
                            cards (Turing and newer)
 - - video_cards_r300     : VIDEO_CARDS setting to build only r300, r400 and r500 based
                            chips code for radeon
 - - video_cards_r600     : VIDEO_CARDS setting to build only r600, r700, Evergreen and
                            Northern Islands based chips code for radeon
 + + video_cards_radeon   : VIDEO_CARDS setting to build driver for ATI radeon video cards
 + + video_cards_radeonsi : VIDEO_CARDS setting to build only Southern Islands based chips
                            code for radeon
 - - video_cards_virgl    : VIDEO_CARDS setting to build driver for virgil (virtual 3D GPU)
 - - video_cards_vmware   : VIDEO_CARDS setting to build driver for vmware video cards
 + + video_cards_zink     : VIDEO_CARDS setting to build Zink OpenGL-over-Vulkan Gallium
                            driver
 + + vulkan               : Add support for 3D graphics and computing via the Vulkan
                            cross-platform API
 + + wayland              : Enable support for dev-libs/wayland
 - - xa                   : Enable the XA (X Acceleration) API for Gallium3D.
 + + zstd                 : Enable support for ZSTD compression
Back to top
View user's profile Send private message
Zucca
Moderator
Moderator


Joined: 14 Jun 2007
Posts: 4002
Location: Rasi, Finland

PostPosted: Mon Mar 24, 2025 10:06 am    Post subject: Reply with quote

You could try this:
Code:
GALLIUM_DRIVER=amdgpu eglinfo -B

If it works you could then add it to your environment (via /etc/env.d).
_________________
..: Zucca :..

My gentoo installs:
init=/sbin/openrc-init
-systemd -logind -elogind seatd

Quote:
I am NaN! I am a man!
Back to top
View user's profile Send private message
fomys
n00b
n00b


Joined: 07 May 2019
Posts: 7

PostPosted: Mon Mar 24, 2025 5:48 pm    Post subject: Reply with quote

THANKS A LOT!

That works! I close this subject, thanks again!

Do you have an idea why mesa use llvmpipe even if amdgpu is working?
Back to top
View user's profile Send private message
keekkenen
n00b
n00b


Joined: 05 Oct 2024
Posts: 52

PostPosted: Mon Mar 24, 2025 6:04 pm    Post subject: Reply with quote

fomys wrote:
THANKS A LOT!

That works! I close this subject, thanks again!

Do you have an idea why mesa use llvmpipe even if amdgpu is working?


Code:
ed@kee ~ $ portageq envvar VIDEO_CARDS
radeonsi amdgpu vesa fbdev


Maybe you use radeon instead of radeonsi.
_________________
7950x3d / x670e MSI Tomagawk / Sapphire RX 7800XT 16Gb / G.Skill 64Gb 5600 / A-Data Legend 960 2Tb (x2), A-Data SX8200PNP 256Gb
Back to top
View user's profile Send private message
Goverp
Advocate
Advocate


Joined: 07 Mar 2007
Posts: 2223

PostPosted: Mon Mar 24, 2025 9:25 pm    Post subject: Reply with quote

Zucca wrote:
You could try this:
Code:
GALLIUM_DRIVER=amdgpu eglinfo -B

If it works you could then add it to your environment (via /etc/env.d).

A lurker writes: Ooh, thanks, I didn't even know it was broken on my box, and the pointer to /etc/env.d meant I also found some eselect opencl cruft that might explain why that's also broken for me!
_________________
Greybeard
Back to top
View user's profile Send private message
Display posts from previous:   
Reply to topic    Gentoo Forums Forum Index Desktop Environments All times are GMT
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum