You are not logged in.
Dear Arch Community!
On a way to make my system more convenient I have found out that my dGPU, which is mobile RTX 2060 Max-Q, does not support runtime D3 or RTD3.
$ cat /proc/driver/nvidia/gpus/0000\:01\:00.0/power
Runtime D3 status: Not supported
Video Memory: Active
GPU Hardware Support:
Video Memory Self Refresh: Not Supported
Video Memory Off: Supported
S0ix Power Management:
Platform Support: Not Supported
Status: DisabledI have put configuration for udev and modules like provided HERE including "options nvidia NVreg_EnableGpuFirmware=0" and it looks like this:
$ modprobe -c nvidia | grep NVreg
options nvidia NVreg_PreserveVideoMemoryAllocations=1
options nvidia NVreg_TemporaryFilePath=/var/tmp
options nvidia NVreg_EnableGpuFirmware=0
options nvidia NVreg_PreserveVideoMemoryAllocations=1
options nvidia NVreg_DynamicPowerManagement=0x02
options nvidia NVreg_UsePageAttributeTable=1I have modesetting enabled with:
options nvidia_drm modeset=1
options nvidia_drm fbdev=1and also I have put appropriate modules to mkinitcpio:
MODULES=(amdgpu nvidia nvidia_modeset nvidia_uvm nvidia_drm)even when I have logged it nvidia-smi does not show any dGPU usage:
+-----------------------------------------------------------------------------------------+
| NVIDIA-SMI 565.77 Driver Version: 565.77 CUDA Version: 12.7 |
|-----------------------------------------+------------------------+----------------------+
| 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 RTX 2060 ... On | 00000000:01:00.0 Off | N/A |
| N/A 34C P8 4W / 30W | 1MiB / 6144MiB | 0% Default |
| | | N/A |
+-----------------------------------------+------------------------+----------------------+
+-----------------------------------------------------------------------------------------+
| Processes: |
| GPU GI CI PID Type Process name GPU Memory |
| ID ID Usage |
|=========================================================================================|
| No running processes found |
+-----------------------------------------------------------------------------------------+I'm looking for someone that can provide some clue where to go next.
2020 ASUS Zephyrus G14
2025 HP ZBook Ultra G1A with Strix Halo
Offline
Does it have to do anything with ASPM? (https://wiki.archlinux.org/title/Power_ … Management)
Because even forced dGPU cannot enable it.
2020 ASUS Zephyrus G14
2025 HP ZBook Ultra G1A with Strix Halo
Offline
Try with "options nvidia NVreg_DynamicPowerManagement=0x01" in /etc/modprobe.d/your_nvidia.conf and show again the output of /proc/driver/nvidia/gpus/0000\:01\:00.0/power it could be that supports "coarse" mode but that should be only for 10xx models. Then check with cat /sys/class/drm/card*/device/power/runtime_status if the gpu appears as suspended.
even when I have logged it nvidia-smi does not show any dGPU usage:
Is ok if you configured correctly the laptop to use as PRIME, only your iGPU should be used, then you run any program in the dGPU with prime-run and the program should appear in nvidia-smi.
Offline
Because even forced dGPU cannot enable it.
What does that mean?
RTD3 will only be possible if this is a prime device that's not actually used for any output, ie. you're running the system on the intel chip and have no monitors attached (enabled) on the nvidia GPU.
Please post your complete system journal for the boot:
sudo journalctl -b | curl -F 'file=@-' 0x0.stPlease post your Xorg log, https://wiki.archlinux.org/title/Xorg#General
Offline
What does that mean?
I meant forced enabled ASPM does not enable this feature for dGPU.
RTD3 will only be possible if this is a prime device that's not actually used for any output, ie. you're running the system on the intel chip and have no monitors attached (enabled) on the nvidia GPU.
The laptop has a DP connector (as a part of USB-C) that is bridged to dGPU, but I also checked even if I did not have any external monitors connected and still RTD3 is not supported.
Try with "options nvidia NVreg_DynamicPowerManagement=0x01"
That I also tried and the output from /proc/driver/nvidia/gpus/0000\:01\:00.0/power it says it is coarse grained, but even if I used NVreg_DynamicPowerManagement=0x02 it still has the same effect like I have shown above.
@seth
journal - http://0x0.st/8Xqa.txt
xorg - http://0x0.st/8XqQ.txt
2020 ASUS Zephyrus G14
2025 HP ZBook Ultra G1A with Strix Halo
Offline
That I also tried and the output from /proc/driver/nvidia/gpus/0000\:01\:00.0/power it says it is coarse grained, but even if I used NVreg_DynamicPowerManagement=0x02 it still has the same effect like I have shown above.
It means your dgpu just supports coarse mode, so the dgpu is only going to the lowest power state.
https://download.nvidia.com/XFree86/Lin … ement.html , the difference with fine-grained is that fine-grained:
... will allow the GPU to be powered down. As soon as the application starts using the GPU, the GPU is reactivated.
the difference is 4w (coarse-grained) vs 1w (fine-grained) , if you want to turn off the dgpu you have to search for a acpi method for that laptop.
Offline
@gnox, is there a way to turn off dGPU without restarting X session and still have PRIME functionality?
2020 ASUS Zephyrus G14
2025 HP ZBook Ultra G1A with Strix Halo
Offline
Not directly no, you'd be back at opting for bbswitch/bumblebee to start a virtual xorg server on demand
Offline
Your options are optimus manager or envycontrol I dont know if they are still maintained, I think optimus manager has some scripts for the acpi calls to turn off the dgpu but I think only when the mode was set to use only the igpu.
@gnox, is there a way to turn off dGPU without restarting X session and still have PRIME functionality?
with xorg besides what Videl says no, but you can put the pci of the card in suspended state and load the nvidia driver dynamically if you are using wayland, I use to do this when using a laptop with a 1660 it helped me to reduce watts usage when on battery mode maybe it works for your laptop, the nvidia driver was the one that kept the dgpu card active always. edit: only use this if your runtime_status is active even if you set correctly 1 2
Last edited by gnox (2025-01-24 17:47:32)
Offline
Are you using nvidia-open or nvidia? Because only the latter has working rtd3 support for Turing
Offline