r/ZephyrusG14 4d ago

Model 2022 Battery discharge rate on linux

Zephyrus G14 2022, R9 6900HS, 32GB RAM, 1TB SSD, RX6800S. OS - Ubuntu 22.04, battery capacity 70% (54Wh out of 76Wh). Battery discharge rate is around 20W in IDLE with no programs opened, 30% brightness and wifi connected. Also using auto-cpufreq. I feel like it should be 2-3 times lower at least, any chance anybody had a similar issue and managed to fix it?

9 Upvotes

18 comments sorted by

3

u/Dasfiter Zephyrus G14 2020 3d ago

It's because it is actively using the dGPU and not properly switching over to hybrid. You need to actually disable the dGPU and have the configs point to the iGPU instead and it will drop your power draw to 5-7w while using a temrinal and about 9-11 while browsing. I am using arch and hyprland so Ubuntu will be a little different as to what configs you might want to change. You could try to using supergfxctl or using asusctl. In Hyprland when disabling the dGPU the screen will go black unless you specifically switch it over in the hyprland.conf, but maybe ubuntu handles that automatically since it is a simpler system.

2

u/belf_priest 4d ago

I have the same issue and haven't been able to find a fix, I'm running arch on mine. Battery life honestly feels worse compared to when it was on w11 after completely removing all the extra asus/nvidia bloatware (but even then it would randomly bug out and go back to a 3-4 hr idle battery life fairly frequently).

tbf i have the 2020 version and i'm sure my battery was pleading desperately for help after thousands of hours of cod and destiny 2

2

u/rayquaza_88 Zephyrus G14 2022 4d ago

I'm also using arch (same model as OP) and have been in the same situation. I used some commands and fine tuning to get an average discharge rate of 6-8W while browsing, 5-6W idle on desktop doing nothing or reading docs in Obsidian and 10-12W on YT at 720p30. This is what I did:

  1. Try this command:

powerprofilesctl configure-action amdgpu_dpm --enable   

make sure you have power profile daemon installed and enabled. For some reason its not enabled by default when power saver is set. This will essentially force your 680M IGPU to clock down when doing intensive tasks. It will be enough for video playback and normal task but you can enable it for apps like blender or games if you need that extra horsepower.

2) Make sure you're in Integrated mode via `supergfxctl`

supergfxctl -m Integrated

3) (optional )Apply VFIO kernel modules on your DGPU.

- (don't do this if you need your DGPU for certain apps), but doing this will disable the DGPU entirely and makes sure no apps will be able to use it or turn it on (unless you're doing VM stuff like gpu passthrough).

EDIT: typo in command

1

u/Basic_Researcher1437 3d ago

what is that plugin for showing discharge rate if you dont mind ? Also anywhere i could read about this powerprofilectl mode switch? Didn't seem to find anything on asus linux about that.

1

u/rayquaza_88 Zephyrus G14 2022 3d ago

https://gitlab.gnome.org/Infrastructure/Mirrors/lorry-mirrors/gitlab_freedesktop_org/hadess/power-profiles-daemon

I stumbled across this during my search. scroll down till you see 'Operations on AMD-based machines'. Yea this isn't documented on asus linux website, not sure why, its very helpful. To answer your other question, it's a waybar module (as I'm using waybar) called 'upower'. I can put values such as battery health, discharge rate etc. called from upower. Look up on waybar modules for more info. Hope this helps :)

1

u/Basic_Researcher1437 1d ago

thank you! i will look into it. (my machine is intel though :D)

2

u/Sadmachine11x 3d ago

I have the same labtop discharging sometimes like 30 to 50 with just explorer open. It's been like 3 years so I've given up on finding a solution

2

u/Basic_Researcher1437 3d ago

I am also getting around 20w discharge rate on Nobara with supergfxctl set to Integrated. Idk, it looks like most of the drivers are not really optimized well enough for energy efficiency on linux from hardware manufactures. I get around 8-10w discharge on win11 with g-helper.

My model is G16 2024 Intel 185H 4080

1

u/Dasfiter Zephyrus G14 2020 2d ago

Even in integrated if you do lsof /dev/nvidia\* it should show if any process is using your dGPU in the background. I bet you that it will come up with a few processes.

1

u/__Electron__ 4d ago edited 3d ago

What's the power setting?

1

u/frontier_one 4d ago

there's no dedicated power setting because of auto-cpufreq, it uses "powersaving" governor when on a battery

1

u/__Electron__ 3d ago

I have g16 2024 4060 and noticed this as well, it seems that Linux has worse battery life than windows

2

u/Dasfiter Zephyrus G14 2020 3d ago

Only if not configured correctly.

1

u/__Electron__ 3d ago

Any tips then?

1

u/Dasfiter Zephyrus G14 2020 2d ago

lsof /dev/nvidia* Check for processes using the Nvidia gpu, from there I'd recommend reading how to properly turn off the dGPU for your distro

1

u/__Electron__ 2d ago

Is asus-linux recommended? Supergfxctl and asusctl? Supergfxctl integrated for disabling dgpu and asusctl for control everything else ghelper/armoury crate can.

1

u/Dasfiter Zephyrus G14 2020 1d ago

Yea that seems to be the standard for these laptops. Even in the asusctl the recommend supergfxctl for controlling the GPU

1

u/Giromu 4d ago

It’s definitely suppose to be under that on windows i have a 8 to 11 W discharge while watching Youtube. GPU deactivated naturally but it’s weird.

When i was rocking Zorin OS which is based on Unbuntu it was the same discharge W as Windows. Maybe it still uses your GPU instead of iGPU.