this post was submitted on 01 Oct 2023
24 points (100.0% liked)

Linux

47237 readers
3343 users here now

From Wikipedia, the free encyclopedia

Linux is a family of open source Unix-like operating systems based on the Linux kernel, an operating system kernel first released on September 17, 1991 by Linus Torvalds. Linux is typically packaged in a Linux distribution (or distro for short).

Distributions include the Linux kernel and supporting system software and libraries, many of which are provided by the GNU Project. Many Linux distributions use the word "Linux" in their name, but the Free Software Foundation uses the name GNU/Linux to emphasize the importance of GNU software, causing some controversy.

Rules

Related Communities

Community icon by Alpár-Etele Méder, licensed under CC BY 3.0

founded 5 years ago
MODERATORS
 

Background story: I recently bought a computer with AMD 7000 series CPU and GPU.

amdgpu_top reports 15 ~ 20 watts in normal desktop usage, but as soon as I have video playing in VLC, it goes to 45 watts constantly which is undesirable behavior especially in summer. (I hope that is just reporting issue... but my computer is hot)

When I do DRI_PRIME=1 vlc and then play videos, amdgpu_top doesn't report the power surge. (I have iGPU enabled)

Is there anything more convenient then modifying individual .desktop files? KDE malfunctions when I put export DRI_PRIME=1 in .xprofile so that's a no go.


Solved: removing mesa related hardware acceleration package makes VLC fall back to libplacebo which doesn't do these weird things.

top 6 comments
sorted by: hot top controversial new old
[–] [email protected] 7 points 11 months ago (1 children)

Are you just running and AMD CPU with integrated graphics, or do you also have a dedicated graphics card? From what I can gather online, the DRI_PRIME variable is mostly used for render offloading to a dedicated GPU, but your question appears to be about iGPUs.

You can also try to manually enable hardware decoding in VLC’s settings. Just go to Tools > Preferences > Input & Codecs and choose VA-API (AMD’s preferred standard).

[–] [email protected] 2 points 11 months ago* (last edited 11 months ago)

do you also have a dedicated graphics card?

Yes, rx 7800 xt

My worry s that playing a 1080P video need 30 watts (assuming amdgpu_top is not wrong), I would like to move that workload to integrated GPU, which I enabled in BIOS.

Thank you for your answer, I can confirm by switching to VA-API it lowers my power usage by a lot (from 45 to 20~21 watts reported).

[–] [email protected] 2 points 11 months ago (1 children)

Do you have a dedicated GPU¿?

[–] [email protected] 2 points 11 months ago* (last edited 11 months ago)

Yes, rx 7800 xt. I can confirm DRI_PRIME does switch to integrated GPU on demand

DRI_PRIME=0 glxinfo | grep "OpenGL renderer"
OpenGL renderer string: AMD Radeon Graphics (gfx1101, LLVM 16.0.6, DRM 3.54, 6.5.5-arch1-1)
DRI_PRIME=1 glxinfo | grep "OpenGL renderer"
OpenGL renderer string: AMD Radeon Graphics (raphael_mendocino, LLVM 16.0.6, DRM 3.54, 6.5.5-arch1-1)
[–] [email protected] 1 points 11 months ago

Which distro are you using. Fedora, manjaro and few others disabled hardware acceleration for certain codecs making CPU and power spike. For Fedora you can enable RPM fusion and install the hardware acceleration versions and be back to normal .

https://rpmfusion.org/

[–] [email protected] 1 points 11 months ago* (last edited 11 months ago)

One thing you could do is plugging your monitor straight into the iGPU outputs and using DRI_PRIME only for applications that need the powerful dGPU.

Unless you want to run either everything or nothing on a specific GPU, I don't think there's a more convenient way than setting DRI_PRIME per application.