My laptop has an Intel internal gpu and an nVidia discrete gpu. I want to make use of nvidia’s dynamic power saving feature, which powers down the dgpu when no processes are using it.
I followed the rpmfusion instructions to use nvidia’s proprietary driver, but haven’t made a nvidia.conf
file in /etc/X11/xorg.conf.d/
yet.
Expected behaviour:
A wayland desktop session shouldn’t use the nvidia gpu resources, allowing the dgpu to power down until needed. (when nvidia dynamic power management is set).
Applications can be run using the dgpu with environment variables.
Actual behaviour:
nvidia-smi
shows that /usr/lib/Xorg
is running on the dgpu, using 4 MiB of graphics memory, even during a wayland desktop session.
Applications can be run using the dgpu with environment variables.
output of inxi -Fazy
System:
Kernel: 5.15.6-200.fc35.x86_64 x86_64 bits: 64 compiler: gcc v: 2.37-10.fc35
parameters: BOOT_IMAGE=(hd3,gpt2)/vmlinuz-5.15.6-200.fc35.x86_64
root=UUID=3194dff3-054c-4207-a389-80cecdcb9f97 ro rootflags=subvol=root rhgb
quiet rd.driver.blacklist=nouveau modprobe.blacklist=nouveau
nvidia-drm.modeset=1
Console: pty pts/1 wm: kwin_wayland DM: SDDM
Distro: Fedora release 35 (Thirty Five)
Machine:
Type: Laptop System: Notebook product: P95xER v: N/A serial: N/A
Chassis: No Enclosure type: 10 serial: N/A
Mobo: Notebook model: P95xER serial: N/A UEFI: American Megatrends
v: 1.07.15 date: 11/16/2018
Battery:
ID-1: BAT0 charge: 19.7 Wh (38.0%) condition: 51.9/53.2 Wh (97.5%)
volts: 14.2 min: 15.2 model: Notebook BAT type: Li-ion serial:
status: Discharging
CPU:
Info: Quad Core model: Intel Core i7-8750H socket: BGA1440 (U3E1)
note: check bits: 64 type: MCP arch: Kaby Lake note: check family: 6
model-id: 9E (158) stepping: A (10) microcode: EA cache: L1: 256 KiB
L2: 1024 KiB L3: 9 MiB
flags: avx avx2 ht lm nx pae sse sse2 sse3 sse4_1 sse4_2 ssse3 vmx
bogomips: 17599
Speed: 800 MHz max: 800 MHz base/boost: 2079/8300 volts: 0.8 V
ext-clock: 100 MHz Core speeds (MHz): 1: 800 2: 800 3: 800 4: 800
Vulnerabilities: Type: itlb_multihit status: KVM: VMX disabled
Type: l1tf
mitigation: PTE Inversion; VMX: conditional cache flushes, SMT disabled
Type: mds mitigation: Clear CPU buffers; SMT disabled
Type: meltdown mitigation: PTI
Type: spec_store_bypass
mitigation: Speculative Store Bypass disabled via prctl and seccomp
Type: spectre_v1
mitigation: usercopy/swapgs barriers and __user pointer sanitization
Type: spectre_v2
mitigation: Full generic retpoline, IBPB: conditional, IBRS_FW, RSB filling
Type: srbds mitigation: Microcode
Type: tsx_async_abort status: Not affected
Graphics:
Device-1: Intel CoffeeLake-H GT2 [UHD Graphics 630] vendor: CLEVO/KAPOK
driver: i915 v: kernel bus-ID: 00:02.0 chip-ID: 8086:3e9b class-ID: 0300
Device-2: NVIDIA GP104M [GeForce GTX 1070 Mobile] vendor: CLEVO/KAPOK
driver: nvidia v: 495.44 alternate: nouveau,nvidia_drm bus-ID: 01:00.0
chip-ID: 10de:1ba1 class-ID: 0300
Device-3: Chicony Chicony USB 2.0 Camera type: USB driver: uvcvideo
bus-ID: 1-8:4 chip-ID: 04f2:b5a7 class-ID: 0e02
Display: server: X.Org 1.21.1.3 compositor: kwin_wayland driver:
loaded: modesetting,nvidia unloaded: fbdev,nouveau,vesa alternate: nv
display-ID: :1 screens: 1
Screen-1: 0 s-res: 1920x1080 s-dpi: 96 s-size: 508x285mm (20.0x11.2")
s-diag: 582mm (22.9")
Monitor-1: XWAYLAND0 res: 1920x1080 hz: 60 dpi: 139
size: 350x190mm (13.8x7.5") diag: 398mm (15.7")
OpenGL: renderer: Mesa Intel UHD Graphics 630 (CFL GT2) v: 4.6 Mesa 21.3.1
direct render: Yes
Audio:
Device-1: Intel Cannon Lake PCH cAVS vendor: CLEVO/KAPOK
driver: snd_hda_intel v: kernel alternate: snd_soc_skl,snd_sof_pci_intel_cnl
bus-ID: 00:1f.3 chip-ID: 8086:a348 class-ID: 0403
Device-2: NVIDIA GP104 High Definition Audio driver: snd_hda_intel v: kernel
bus-ID: 01:00.1 chip-ID: 10de:10f0 class-ID: 0403
Sound Server-1: ALSA v: k5.15.6-200.fc35.x86_64 running: yes
Sound Server-2: PulseAudio v: 15.0 running: no
Sound Server-3: PipeWire v: 0.3.40 running: yes
Network:
Device-1: Intel Wireless-AC 9260 vendor: Rivet Networks driver: iwlwifi
v: kernel bus-ID: 03:00.0 chip-ID: 8086:2526 class-ID: 0280
IF: wlp3s0 state: up mac:
Device-2: Realtek RTL8111/8168/8411 PCI Express Gigabit Ethernet
vendor: CLEVO/KAPOK driver: r8169 v: kernel port: 3000 bus-ID: 04:00.0
chip-ID: 10ec:8168 class-ID: 0200
IF: enp4s0 state: down mac:
Bluetooth:
Device-1: Intel Wireless-AC 9260 Bluetooth Adapter type: USB driver: btusb
v: 0.8 bus-ID: 1-14:7 chip-ID: 8087:0025 class-ID: e001
Report: rfkill ID: hci0 rfk-id: 3 state: down bt-service: enabled,running
rfk-block: hardware: no software: yes address: see --recommends
Drives:
Local Storage: total: 2.05 TiB used: 344.81 GiB (16.5%)
ID-1: /dev/nvme0n1 maj-min: 259:0 vendor: Samsung model: SSD 960 EVO 250GB
size: 232.89 GiB block-size: physical: 512 B logical: 512 B speed: 31.6 Gb/s
lanes: 4 type: SSD serial: rev: 3B7QCXE7 temp: 39.9 C scheme: GPT
SMART: yes health: PASSED on: 172d 10h cycles: 2,355
read-units: 26,453,729 [13.5 TB] written-units: 35,544,655 [18.1 TB]
ID-2: /dev/sda maj-min: 8:0 vendor: Seagate model: ST2000LX001-1RG174
family: FireCuda 2.5 size: 1.82 TiB block-size: physical: 4096 B
logical: 512 B sata: 3.1 speed: 6.0 Gb/s type: HDD rpm: 5400
serial: rev: SDM1 temp: 35 C
SMART: yes state: enabled health: PASSED on: 291d 14h cycles: 2354
read: 27.61 TiB written: 7.96 TiB Pre-Fail: reallocated sector: 100
threshold: 36 attribute: Spin_Retry_Count value: 100 worst: 100
threshold: 97
Partition:
ID-1: / raw-size: 231.3 GiB size: 231.3 GiB (100.00%)
used: 111.46 GiB (48.2%) fs: btrfs block-size: 4096 B dev: /dev/nvme0n1p3
maj-min: 259:3
ID-2: /boot raw-size: 1024 MiB size: 973.4 MiB (95.06%)
used: 252.1 MiB (25.9%) fs: ext4 block-size: 4096 B dev: /dev/nvme0n1p2
maj-min: 259:2
ID-3: /boot/efi raw-size: 600 MiB size: 598.8 MiB (99.80%)
used: 13.8 MiB (2.3%) fs: vfat block-size: 512 B dev: /dev/nvme0n1p1
maj-min: 259:1
ID-4: /home raw-size: 231.3 GiB size: 231.3 GiB (100.00%)
used: 111.46 GiB (48.2%) fs: btrfs block-size: 4096 B dev: /dev/nvme0n1p3
maj-min: 259:3
Swap:
Kernel: swappiness: 60 (default) cache-pressure: 100 (default)
ID-1: swap-1 type: zram size: 8 GiB used: 0 KiB (0.0%) priority: 100
dev: /dev/zram0
Sensors:
System Temperatures: cpu: 49.0 C pch: 63.0 C mobo: N/A
Fan Speeds (RPM): N/A
Info:
Processes: 406 Uptime: 1h 57m wakeups: 3 Memory: 31.2 GiB
used: 6.4 GiB (20.5%) Init: systemd v: 249 runlevel: 5
target: graphical.target tool: systemctl Compilers: gcc: 11.2.1 Packages: 40
note: see --pkg flatpak: 32 snap: 8 Shell: Zsh (sudo) v: 5.8 default: Bash
v: 5.1.8 running-in: yakuake inxi: 3.3.09
nvidia-smi
Wed Dec 8 15:49:34 2021
±----------------------------------------------------------------------------+
| NVIDIA-SMI 495.44 Driver Version: 495.44 CUDA Version: 11.5 |
|-------------------------------±---------------------±---------------------+
| GPU Name Persistence-M| Bus-Id Disp.A | Volatile Uncorr. ECC |
| Fan Temp Perf Pwr:Usage/Cap| Memory-Usage | GPU-Util Compute M. |
| | | MIG M. |
|===============================+======================+======================|
| 0 NVIDIA GeForce … Off | 00000000:01:00.0 Off | N/A |
| N/A 47C P8 5W / N/A | 6MiB / 8119MiB | 0% Default |
| | | N/A |
±------------------------------±---------------------±---------------------+
±----------------------------------------------------------------------------+
| Processes: |
| GPU GI CI PID Type Process name GPU Memory |
| ID ID Usage |
|==============================================================|
| 0 N/A N/A 1557 G /usr/libexec/Xorg 4MiB |
±----------------------------------------------------------------------------+
contents of /etc/modprobe.d/nvidia.conf
Option “NVreg_DynamicPowerManagement=0x02”
/etc/nvidia
is an empty directory.
I have no nvidia-affecting files in /etc/X11/xorg.conf.d/