It seems i have installed GPU drivers but have no GPU - switch to CPU drivers

When I first began to use manjaro, everything was good. Then I wanted to use electron apps with hardware acceleration enabled in the settings of those apps.
When I disable hardware acceleration, these apps perform well, so thats what I did for most of the apps which provide such setting.

Recently, I tried stable-diffusion locally and their support guy told me that my system thinks it has a GPU, which would be the reason for the stable-diffusion not working (in the end he made stable-diffusion switch to a mode where the GPU driver didn’t interfere and that worked). He found that out when he told me to use the following command:

grep amd /proc/bus/pci/devices

My output of said command:

0800	10021636	45	       c6000000c	               0	       c7000000c	               0	            1001	        fd300000	               0	        10000000	               0	          200000	               0	             100	           80000	               0	amdgpu

Now I am suspecting that the slow apps when turned hardware acceleration on might somehow be linked to manjaro thinking it has a GPU inside and I would like to ensure that there is the right driver installed.

So far I:

  • am unsure if I could just remove the amdgpu
  • am unsure if that same amdgpu is behind “video-linux”
  • read about amdgpu that the driver seems to be for graphic cards (which I don’t have in this laptop)

Some more information I while I searched for similar cases and used their same commands to compare my system to their case:

I am using Linux 6.1.26-1

dmidecode | grep -A3 '^System Information'
System Information
	Manufacturer: LENOVO
	Product Name: 20Y10002MZ
	Version: ThinkPad P14s Gen 1
uname -m
x86_64
uname -r
6.1.26-1-MANJARO
mhwd -l -d --pci
(only partial output)
> PCI Device: /devices/pci0000:00/0000:00:08.1/0000:08:00.0 (0300:1002:1636)
  Display controller ATI Technologies Inc Renoir
--------------------------------------------------------------------------------
  > INSTALLED:

   NAME:	video-linux
   ATTACHED:	PCI
   VERSION:	2018.05.04
   INFO:	Standard open source drivers.
   PRIORITY:	2
   FREEDRIVER:	true
   DEPENDS:	-
   CONFLICTS:	-
   CLASSIDS:	0300 0380 0302 
   VENDORIDS:	1002 8086 10de 
inxi -xG
Graphics:
  Device-1: AMD Renoir vendor: Lenovo driver: amdgpu v: kernel arch: GCN-5
    bus-ID: 08:00.0 temp: 47.0 C
  Device-2: Chicony Integrated Camera type: USB driver: uvcvideo
    bus-ID: 2-2:2
  Device-3: Logitech HD Webcam C615 type: USB driver: snd-usb-audio,uvcvideo
    bus-ID: 4-1.4.1:14
  Display: x11 server: X.Org v: 21.1.8 driver: X: loaded: amdgpu,modesetting
    dri: radeonsi gpu: amdgpu,evdi resolution: 1: 1920x1080~60Hz
    2: 1920x1080~60Hz 3: 640x480~60Hz
  API: OpenGL v: 4.6 Mesa 23.0.3 renderer: AMD Radeon Graphics (renoir LLVM
    15.0.7 DRM 3.49 6.1.26-1-MANJARO) direct-render: 

Any help is appreciated.

Greetings,
Michael


Moderator edit: Fixed formatting

You do have a GPU, just not a dedicated one, but rather integrated as all AMD Ryzen mobile have one:

WIthout any GPU, your laptop display won’t light up. amdgpu driver works for every AMD GPU, be it integrated or dedicated, doesn’t matter. Checking out the datasheet from the product name you gave, your laptop comes with AMD Ryzen 7 PRO 4750U (read the Graphics Capabilities section).

And now to answer your questions:

Don’t want any display? Sure.

No, amdgpu is part of linuxXY, or in other words, it’s part of the kernel.
video-linux is a mhwd profile which as written in the note:

The mhwd profile ‘video-linux’ corresponds to the latest opensource driver available for your hardware.

1 Like

I was always under the impression that GPU is never integrated into a CPU and that it then would just be a CPU, but here I stand corrected. I also want to mention that I read the Graphics Capabilities section!

I was always thinking that I could somehow still have the terminal, but I know now that this is not the way it works!

Thanks for that information, I learned :bulb:

I have a question regarding the use of GPU in my system. Because now that I know that there is a GPU but not a dedicated one inside my system I was wondering if it is possible to only use the CPU and not use the GPU at all.

The reason for my inquiry is that I have noticed that some software on my Manjaro system is performing poorly. However, I have found that disabling hardware acceleration does improve the performance of the software alot. This has led me to wonder if it is possible to stop using the GPU altogether and only use the CPU, thus the hardware acceleration would not apply or always “fall back” on the CPU.

I would greatly appreciate any advice or suggestions that you may have on this matter.
Thank you for your time and assistance. :pray:

Best regards
Michael

Here’s actual die shot of Ryzen 4000 series (the iGPU is a complex holding the Compute Units):


with the labels removed:

The control, is unfortunately at each application’s hand. You can’t really “disable” the GPU, not without losing displays, but you can find out how each application detects GPU presence or how they decide to use GPU or not.

ffmpeg, for instance, will not try to outsmart you and will use CPU only by default unless specifically told so using command line switches programmed into it. This behavior is a design decision chosen by ffmpeg developers, not something that magically inserted. Stable diffusion has its own decision regarding this, and it looks like it’s the “let me choose what I think is the best on your machine” type of decision.

1 Like

Thank you for your thoroughly answer, impressive.

So I learned that using hardware acceleration is decided by each application individually and its impossible to disable the whole GPU because it would result in losing displays.

Yeah, the app “ray” from spatie does not let me choose if I want to use hardware acceleration or not.
I opened an issue on git and wrote them by mail but most of their developers use apple devices, that’s why the issue is on a low-prio queue.
I even made a suggestion how they could let the user enable / disable the hardware acceleration but so far no luck - but I will manage.

Now I am happy that I tried it on here in the forum, how can I thank you?

Regards
Michael

An important clarification: in almost all cases on modern hardware (like you have), hardware acceleration is a good thing. It is dramatically faster than software rendering. Your initial question suggested that disabling hardware acceleration increased performance - I do not believe this is the case. I suggest you go back and double check your assumptions.

1 Like

Thank you for your message and the clarification on hardware acceleration.

I appreciate your insights and agree that generally, hardware acceleration is a good thing that provides faster performance than software rendering.

However, I would like to clarify that I am not making an assumption that disabling hardware acceleration improves performance. In fact, in my specific case, disabling hardware acceleration on said applications did improve performance from unusable to normal.

While I understand that it may be unusual for hardware acceleration to worsen performance, I don’t find it entirely unbelievable as every system can have unique configurations and software that may interact with hardware acceleration differently.

Lastly, I appreciate your advice to double check my assumptions. I did that with colleagues also using manjaro (but not xfce - that seems to be the most outstanding difference).
Thank you again for your insights.

No need to, keep on exploring and form the computing experience you actually want.

1 Like

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