As most of the things on Linux if you install the right tools and configure them right you should get same if not better results than Windows.
Utilities you could look into: TLP and powertop. They are both power controlling utilities.
[update] The paragraph below, regarding preconfigured EOS power saving is uncertain. While my one time experience was just as I wrote it down below, apparently it’s not the case with all hardware, so your mileage might vary[/update]
EndeavourOS uses TLP and has pretty aggressive power saving features preconfigured out of the box, especially for running on battery (it will limit the speed of the CPU to minimum spec speed on battery, a bit too much for my liking actually).
Anyway, I’ve made my own settings and disabling the dedicated graphics card I got my system to run around 7.5 watts at idle, and around 12.5 watts when actually doing stuff on the PC. All this with WIFi on and without reducing the screen brightness. My machine has a 6 core 12 threads Intel i7-10710U CPU, which is not a meek CPU at all: the CPU itself goes up to 45W when on AC.
There are some GUI tools to adjust the two utilities i mentioned earlier, but actually getting them dialed up to your liking will take some experimenting around.
To see how you’re standing check out the powerstat
utility (you will need to install it with yay -S powerstat
) that will show total computer power draw (it only shows correct numbers when running on battery, but I think current version can also tell you how the machine fares power-wise when connected to AC).
You can run it for example with the command powerstat -d 5 1
to measure every 1 second for a few mintues. Change various settings to see how things change. I see some jumps when i connect a monitor for example, also when running CPU intensive taks like benchmarks or power stressing.
You can use the s-tui
utility (you will need to install it with yay -S s-tui
) to monitor CPU utilization, and even to simulate some heavy computation on one or multiple cores to see how that affects your power draw, and also to observe how the various power management tools affect your CPU behaviour (power and performance wise) when on battery or AC.
Undervolting the CPU can also help you get better power results and a higher boost frequency in the same power envelope.
Here’s a reddit post regarding someone’s experience with a gaming laptop. https://www.reddit.com/r/MSILaptops/comments/as4zzw/my_experience_on_gs65_stealth006_rtx_2060_and/
While I wouldn’t necessarily say that his advice are the best out there (i have had better results with tlp than with powertop), it proves that what you ask can be done in Linux.