NVIDIA has been constantly working to improve power management in Linux but there are still certain situations when the Linux driver needlessly uses a lot more power than Windows 10 (haven’t tried W11 yet).
Environment:
OS: Fully updated Fedora 36, Linux 5.19.16, NVIDIA 520.56.06
DE: XFCE4 without compositing
GPU: GTX 1660 Ti, stock
CPU: Ryzen 7 5800X
Monitor: 2560x1440@144Hz connected via DisplayPort
Additional settings:
Option "Coolbits" "28"
Option "metamodes" "nvidia-auto-select +0+0 {ForceCompositionPipeline=On, ForceFullCompositionPipeline=On}"
Option "UseNvKmsCompositionPipeline" "Off"
Driver options
options nvidia NVreg_EnableS0ixPowerManagement=1
options nvidia-drm modeset=1
-
Working in Firefox. In Windows 10 when you browse light static HTML pages (uBlock Origin, no banners, etc) GPU consumes on average around 9W. Under Linux: 27W. Steps to reproduce: Just launch Firefox with a new Tab page where you see you most visited websites and Pocket recommendations below. Start erratically scrolling it up and down fast. This is a 100% static webpage for all intents and purposes.
-
Try to drag around the screen a simple static application [window] after minimizing or closing all other applications, e.g. Mousepad. It starts with ~27W, then settles on 15W. Under Windows 10? Again, around 9W.
-
Full screen 1080p videos in Firefox under Linux consume around ~25W vs ~12W in Windows. Just open any Twitch stream and switch to full screen. No video acceleration is used in Linux. In Windows 10 video acceleration is used/enabled, which means it should use more energy but it uses less. So, under Linux not only your CPU is used to decode videos (more power use), also your GPU uses more energy to render videos which makes Linux power-wise a very bad desktop OS.
-
mpv
withvdpau
vs Windows MPC-HC. Again Windows comes on top by a wide margin.
It would be great if NVIDIA addressed these scenarios.
Better yet, it would be really great if there was a special list of applications for which the NVIDIA driver was allowed to clock up GPU and VRAM.