Nvidia Power Management
Configuration for Nvidia GPU power management on Linux systems, particularly for hybrid graphics setups with Intel integrated GPUs.
Turing GPU Configuration
On Turing architecture GPUs, specific kernel module parameters are required
for proper power management. The following settings must be added to
/etc/modprobe.d/nvidia.conf:
options nvidia "NVreg_EnableGpuFirmware=0"Dynamic power management is enabled via /etc/modprobe.d/nvidia-pm.conf:
options nvidia "NVreg_DynamicPowerManagement=0x02"Driver Compatibility
D3 sleep state on Turing cards is not possible with the nvidia-open driver.
Downgrading to nvidia-580xx is required for proper power management. This
limitation is documented in community forums for hybrid graphics setups.
Applying Settings
After modifying configuration files, regenerate the initramfs:
sudo mkinitcpio -P linuxRegenerate GRUB configuration:
sudo grub-mkconfig -o /boot/grub/grub.cfgHyprland Integration
To route Hyprland through the Intel GPU for better battery life, set the following environment variable in the Hyprland configuration:
env = AQ_DRM_DEVICES,/dev/dri/card1This ensures the compositor uses the integrated GPU while the discrete Nvidia GPU remains available for compute tasks.
Verifying Power State
Check the GPU runtime power status:
cat /sys/bus/pci/devices/0000:01:00.0/power/runtime_statusMonitor suspended time to confirm the GPU is entering low-power states:
cat /sys/bus/pci/devices/0000:01:00.0/power/runtime_suspended_timeQuery the Nvidia driver directly for power information:
cat /proc/driver/nvidia/gpus/0000:01:00.0/powerThese verification methods are consistent with broader Linux power management practices.