You are not logged in.

#1 2021-05-30 15:54:13

Registered: 2018-08-17
Posts: 6

NVIDIA PRIME and acpi_call

I have a Dell XPS 15 9570 laptop. Since NVIDIA added support for the PRIME render offloading on Linux I've tried to check it out, but it turns out that my GPU (GTX 1050 Ti) isn't compatible with PCI-Express Runtime D3 Power Management. This means that it will not turn off automatically, even if it's not used by anything. It's quite annoying since it makes the laptop's fans spin non-stop, and it's also draining the battery faster. I thought about turning it off manually using acpi_call, and it works, but I've got two problems:
1) how can I turn the GPU back on without rebooting the laptop?
2) the laptop freezes when closing the lid after the NVIDIA GPU has been turned off by acpi_call, how can I solve this?

Laptop info from neofetch (I can provide more if needed):
Kernel: 5.12.8-arch1-1
DE: GNOME 40.1 (X11)
CPU: Intel i7-8750H (12) @ 4.100GHz
GPU: NVIDIA GeForce GTX 1050 Ti Mobile
GPU: Intel UHD Graphics 630

The GPU can be turned on back again by doing
echo '\_SB.PCI0.PEG0.PEGP._ON' > /proc/acpi/call
This makes the laptop fans spin again, indicating the GPU is indeed turned on. However, prime-run doesn't detect the GPU:

$ prime-run blender
Read prefs: /home/sajmon/.config/blender/2.92/config/userpref.blend
[ALSOFT] (EE) Failed to set real-time priority for thread: Operation not permitted (1)
ALSA lib pcm_dmix.c:1075:(snd_pcm_dmix_open) unable to open slave
Error! Unsupported graphics card or driver.
A graphics card and driver with support for OpenGL 3.3 or higher is required.
The program will now close.

It seems that something else is needed in order to make the GPU present in the system after turning it off. Also, turning the GPU back on doesn't eliminate problem 2). The laptop still freezes if it's entering sleep mode. I know that normally if I don't turn off the GPU with acpi_call sleep mode works properly. Sleep mode seems to be dependent on the GPU being present in the system.

Problem 2) can be extended to logging out. When I've tried to log out after disabling the GPU with acpi_call the system froze.
Also, when the laptop gets frozen it starts to spin its fans at maximum speed possible.

The login and sleep issue must be somehow related to the display manager. I changed it from GDM to SDDM and now the sleep mode works (because SDDM doesn't greet you with a login screen after waking up from sleep on GNOME). When I try to log out, SDDM also crashes. Maybe it's trying to load Nvidia drivers? I don't know how to provide necessary logs here, since when SDDM crashes I have to fully power off the laptop, and that erases the logs.

Last edited by SaJmoN170 (2021-06-09 06:31:41)


Board footer

Powered by FluxBB