Open leviport opened 4 years ago
This is still present on 455.28.
On oryp6, I'm also noticing that using two 1440p external displays makes the performance a bit choppy as well. It's still usable, but the slowness is noticeable. It seems that switching to Nvidia mode still gives the best performance with external displays.
I've also noticed that applications that launch using Nvidia graphics, such as Steam games, do not suffer the same reduction in performance.
I have a similar issue, but on an HP. When running on Hybrid mode, the external display doesn't use the discrete GPU. I have to specifically switch to Nvidia graphics before using an external display so as to make it usable.
This issue is still present on 455.38
Same problem here. I can only get good desktop experience in "NVIDIA Graphics" mode. In hybrid with external screen it lags and CPU consumes 30% all the time.
This is still an issue on my Acer Nitro 5 AN515-54 with an Nvidia 1650 GPU.
Update: this bug is still present on the 470.57.02 driver. The performance seems about the same. There is one small improvement, however. Now when I switch off the oryp6's internal display, I don't see the same ~2 seconds of rapid flashing on the external display that I was seeing before.
I'm testing the new 470.63 update and it looks like it fixes hybrid mode on external displays.
Edit: it seems I was mistaken. While the situation seems to have improved, external displays are still not working as well as they are in NVIDIA Graphics mode.
I just updated and the bug persists. But it seems to only hit electron applications like slack, vs-code and the signal desctop client.
I updated to 470.63 and hybrid mode is still terrible for external displays, even on non-electron applications. Everything on the desktop (barring the cursor) is choppy and generally runs at low fps.
Laptop Specifications: Acer Nitro 5 AN515-54 nVidia 1650 i5-9300H 16GB RAM 1TB HDD
this is a bug in the xorg
https://gitlab.freedesktop.org/xorg/xserver/-/issues/22 https://gitlab.freedesktop.org/xorg/xserver/-/issues/1028
people there make a patch to fix it .
maybe pop os devs can help us to see how to apply it
"Hybrid Graphics" bug with External displays in absence of video to Built in Laptop display
Distribution (run cat /etc/os-release):
• Gnome 3.36.8 • X11 Windowing System • Nvidia 470.63.01 • Kernel 5.13.0-7614-generic #14~1631647151~20.04~930e87c-Ubuntu SMP Fri Sep 17 00:26:31 UTC x86_64 x86_64 x86_64 GNU/Linux • NAME="Pop!_OS" with only the Dash to Dock gnome desktop extension • VERSION="20.04 LTS" • ID=pop • ID_LIKE="ubuntu debian" • PRETTY_NAME="Pop!_OS 20.04 LTS" • VERSION_ID="20.04" • HOME_URL="https://pop.system76.com" • SUPPORT_URL="https://support.system76.com" • BUG_REPORT_URL="https://github.com/pop-os/pop/issues" • PRIVACY_POLICY_URL="https://system76.com/privacy" • VERSION_CODENAME=focal • UBUNTU_CODENAME=focal • LOGO=distributor-logo-pop-os
Issue/Bug Description: • When in Hybrid graphics mode with external monitors attached AND the built in display enabled (regardless of what is displayed on the screen,) video output onto external displays works perfectly. Typically the Dell is my primary monitor, in both Mirrored and Joined/Extended desktop configurations the video performance on the external display is perfect. (ie. 60FPS, totally usable for day to day activities.) • When in hybrid graphics mode with external monitors attached AND the built in display disabled in software via the Gnome display settings, video output onto external displays is unusable. Video output on external displays drops to sub 2FPS. This holds true for both HDMI and Mini-Display Port. Tested with both the Dell and the Acer ◦ NOTE: This exact same setup with Nvidia graphics-only does not present this problem. In Nvidia-only mode, 60FPS on all external displays regardless of whether or not the built-in laptop display is enabled in software or not. ◦ NOTE2: This setup in Windows 10 works fine as well. However I do not have visibility into which GPU is actually outputting video in Windows
Expected behavior:
When in hybrid graphics mode with external monitors attached AND the built in display disabled in software via the Gnome display settings, video output onto external displays should work as well as it does with Nvidia graphics.
Other Notes:
Hardware Setup: • 15.6” 2018 System76 Oryx Pro (orpy4) • i7 8750H with internal Intel HD 630 • Nvidia GTX 1070 with Max-Q Design • External Monitor 1: Dell U2417H connected via HDMI directly to the laptop (generic sub $5 cable) • External Monitor 2: Acer V243PHL connected via Mini-Display port directly to the laptop (generic sub $10 cable) ◦ NOTE: The external displays are not used concurrently. They’re physically apart from one another with External Monitor 2, setup permanently in front of a Logitech G27 for Euro/American Truck Simulator driving games only. • Laptop built-in display: Typically physically opened (to access the power button) but with no video output since the computer resides behind the two external monitors as if it was a desktop
Workaround: • Login in Hybrid graphics mode and use Gnome display settings to Mirror the built-in display with the desired primary External Monitor (in this case, it’s the Dell)
The 470.82 driver is still terrible with external displays in hybrid mode, even on my recent system with an i7-10750H and a 1650Ti Max-Q.
I have a report from a System76 customer on a kudu6
system that this may be fixed by the 515.43.04 Beta driver but possibly as far back as the 510.73.05 release when using the ".run" file directly from Nvidia. He has found that the same version as packaged using the either the System76 PPA and our packaging of the 510.73.05 driver or the Ubuntu based packaging of the driver has this performance loss when on the external display
(details in support case 69153 private to protect the innocent)
I posted on this thread a year ago, but the issue hasn't been acknowledged, I doubt there's a fix in the works
Busy loop also happens when running OpenCL tasks.
Some fix it by preloading a library that overrides clock_gettime
.
https://github.com/mbevand/silentarmy/issues/54
https://bitcointalk.org/index.php?topic=181328.0
I have a report from a System76 customer on a
kudu6
system that this may be fixed by the 515.43.04 Beta driver but possibly as far back as the 510.73.05 release when using the ".run" file directly from Nvidia. He has found that the same version as packaged using the either the System76 PPA and our packaging of the 510.73.05 driver or the Ubuntu based packaging of the driver has this performance loss when on the external display(details in support case 69153 private to protect the innocent)
I just installed the latest via
init 4
rmmod -f nvidia
sudo ./NVIDIA-Linux-x86_64-515.76.run
# selected no for dkms
restarted
And the issue is completely gone so far
This is on my new oryx pro that I got this week and the NVIDIA-Linux-x86_64-515.76.run
I've heard that NVIDIA 525 fixed the busy polling issue which is significantly impacting GNOME performance in Mutter. That might improve this issue too.
Just insatalled the 525, chrome is still laggy on screen drags, but seems to be running slightly better than the 515.
Thanks for the info @mmstick
I have the same issue, present lag on a external display (NVIDIA mode)
Have clean install of Pop OS 22.04, NVIDIA GTX 1650 (mobile) and NVIDIA Driver Version: 515.65.01
If i found any solution can be explain the solution on this Issue.
525 was just released today, if you want to give it a try. Sounds like it doesn't completely fix it, but hopefully it helps.
a couple of questions I don't see in prior comments:
Just hesitant to perform an out-of-band upgrade if the OS isn't ready to include it.
Thanks.
When I say it was released, I mean it's released on Pop. Also, Pop 22.10 doesn't exist.
Fantastic. Thanks.
no (good) luck here... after an update / upgrade and the pop shop install of 525. six-month-old kudu6
k6:~> nvidia-smi
Wed Dec 7 10:55:42 2022
+-----------------------------------------------------------------------------+
| NVIDIA-SMI 525.60.11 Driver Version: 525.60.11 CUDA Version: 12.0 |
|-------------------------------+----------------------+----------------------+
| 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 On | N/A |
| N/A 40C P8 17W / N/A | 54MiB / 6144MiB | 40% Default |
| | | N/A |
+-------------------------------+----------------------+----------------------+
+-----------------------------------------------------------------------------+
| Processes: |
| GPU GI CI PID Type Process name GPU Memory |
| ID ID Usage |
|=============================================================================|
| 0 N/A N/A 3921 G /usr/lib/xorg/Xorg 53MiB |
+-----------------------------------------------------------------------------+
Looks like the polling problem (or a new problem, exhibiting the same symptom) now happens in nvidia
mode too, under 525.
I've re-installed 515.65.01 where the polling problem only appears to be present in hybrid mode.
This is still happening
nvidia-driver-525/jammy,now 525.60.11-1pop0~1670285463~22.04~b24c135 amd64 [installed,automatic]
lsb_release -a
No LSB modules are available.
Distributor ID: Pop
Description: Pop!_OS 22.04 LTS
Release: 22.04
Codename: jammy
lspci | grep VGA
00:02.0 VGA compatible controller: Intel Corporation Alder Lake-P Integrated Graphics Controller (rev 0c)
01:00.0 VGA compatible controller: NVIDIA Corporation GA104 [Geforce RTX 3070 Ti Laptop GPU] (rev a1)
The new 525.78.01
driver has this release note:
Fixed excess CPU usage in hybrid graphics configurations where an external display is connected to an NVIDIA discrete GPU and configured as a PRIME Display Offload sink (also known as "Reverse Prime").
But after updating to the new driver and rebooting, the issue is still present. I'm using a Dell laptop with a 3060 though, so I'm not sure if the fix is hardware dependent.
Also, the issue only happens on Xorg. Wayland runs normally when using only the external display in hybrid mode, with applications able to use either GPU (but has the usual Nvidia Wayland issues like no night light etc).
I'm experiencing this in nvidia mode (not tried hybrid) with 525.85.05
and a fresh install of Pop OS 22.04
.
Turning off the built in display cause huge lag on the external monitor (although not for the mouse cursor).
@woook ,
I'm experiencing this in nvidia mode (not tried hybrid) with
525.85.05
and a fresh install ofPop OS 22.04
. Turning off the built in display cause huge lag on the external monitor (although not for the mouse cursor).
I'm taking a look at mine and do not see the excessive CPU usage with nvidia config running only the external monitor. My nvidia-smi output:
+-----------------------------------------------------------------------------+
| NVIDIA-SMI 525.85.05 Driver Version: 525.85.05 CUDA Version: 12.0 |
|-------------------------------+----------------------+----------------------+
| 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 On | N/A |
| N/A 38C P8 15W / 115W | 252MiB / 6144MiB | 13% Default |
| | | N/A |
+-------------------------------+----------------------+----------------------+
+-----------------------------------------------------------------------------+
| Processes: |
| GPU GI CI PID Type Process name GPU Memory |
| ID ID Usage |
|=============================================================================|
| 0 N/A N/A 4010 G /usr/lib/xorg/Xorg 168MiB |
| 0 N/A N/A 4138 G /usr/bin/gnome-shell 81MiB |
+-----------------------------------------------------------------------------+
I also don't see excessive CPU but there is a 5s lag between doing something and seeing it happen on screen. I guess I might have a different type of performance degradation.
| NVIDIA-SMI 525.85.05 Driver Version: 525.85.05 CUDA Version: 12.0 |
|-------------------------------+----------------------+----------------------+
| 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 On | N/A |
| N/A 34C P8 8W / 80W | 49MiB / 8192MiB | 12% Default |
| | | N/A |
+-------------------------------+----------------------+----------------------+
(FWIW, I switched to hybrid and get exactly the same)
The new
525.78.01
driver has this release note:Fixed excess CPU usage in hybrid graphics configurations where an external display is connected to an NVIDIA discrete GPU and configured as a PRIME Display Offload sink (also known as "Reverse Prime").
But after updating to the new driver and rebooting, the issue is still present. I'm using a Dell laptop with a 3060 though, so I'm not sure if the fix is hardware dependent.
Also, the issue only happens on Xorg. Wayland runs normally when using only the external display in hybrid mode, with applications able to use either GPU (but has the usual Nvidia Wayland issues like no night light etc).
I have the same issue with a 2060. I am getting this issue on every driver after the 520.56.06 driver. Currently on the 525.89.02 driver and this issue persists on kde-plasma
I've just bought a Gigabyte Aorus 5 SE4 i7 12700H with Nvidia RTX 3070. Running PopOs I am experiencing this problem also. Nvidia Driver 525.85.05
I took a dump of the nvidia-smi -a output during normal operation and while the lid is closed and noted the key differences in the form ( good -> bad )
PCI/ GPU Link Info/ PCIe Generation/ Current 2 -> 1 PCI/ GPU Link Info/ PCIe Generation/ Device Current 2 -> 1 PCI/ Tx Throughput 147000 KB/s -> 0 KB/s PCI/ Rx Throughput 147000 KB/s -> 0 KB/s Performance State P5 -> P8
Nvidia lists the Performance States from P0 - P15 with P0 being max performance and P15 being lowest performance.
Naturally the memory usage, utilization and power draw all dropped also.
I have also enabled persistence mode via the daemon to see if this was caused by the driver being unloaded while the system juggles displays. This did not make any difference.
My external monitor is a 49" AOG AGON 120hz (5120x1440). The issue being discussed does not seem to be reproducible on the USB-C output of the laptop. However, the USB-C output doesn't support/recognize my native resolution or refresh rate making it pretty much useless. I am assuming that this works becase the USB-C is directly connected to the CPU which is doing the handover... however the mDP port is connected directly to the GPU and when the lid closes the PCIe lanes are forced into low-power mode or some such. My theory is that its probably a power management bug.
Hopefully some of this information helps solve the issue.
The problem still exists with the newest 525.105.17 driver. It only appears when the laptop's internal screen is off, and once it's turned on, the problem goes away. It's weird because the mouse pointer and animations aren't impacted by this.
The device is mux-less, but the laptop is connected to an external monitor via USB-C DisplayPort directly connected to the Nvidia GPU, which is supposed to bypass the integrated GPU.
EDIT:
I gave Pop on Wayland a try, just to see what happens, and the issue is gone. It seems like it could be an XOrg problem instead of a driver issue, at least, that's my impression.
EDIT2 (Workaround):
After adding LIBGL_DRI3_DISABLE=true
in /etc/environment
Hybrid mode works fine in XOrg, but I don't fully understand what DRI3 does, so it may not be a desirable solution.
EDIT3:
Never mind, the issue persists but manifests itself only after Nvidia GPU is in use.
Host: ROG Strix G713QR_G713QR 1.0
Kernel: 6.2.6-76060206-generic
Uptime: 27 mins
Packages: 2447 (dpkg), 73 (flatpak)
Shell: bash 5.1.16
Resolution: 1920x1080, 1920x1080
DE: GNOME 42.5
WM: Mutter
WM Theme: Pop
Theme: Pop-dark [GTK2/3]
Icons: Pop [GTK2/3]
Terminal: gnome-terminal
CPU: AMD Ryzen 9 5900HX with Radeon Graphics (16) @ 3.300GHz
GPU: NVIDIA GeForce RTX 3070 Mobile / Max-Q
GPU: AMD ATI 06:00.0 Cezanne
Memory: 4703MiB / 31502MiB
Sat Apr 15 20:37:33 2023
+-----------------------------------------------------------------------------+
| NVIDIA-SMI 525.105.17 Driver Version: 525.105.17 CUDA Version: 12.0 |
|-------------------------------+----------------------+----------------------+
| 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 On | N/A |
| N/A 45C P3 21W / 130W | 46MiB / 8192MiB | 23% Default |
| | | N/A |
+-------------------------------+----------------------+----------------------+
+-----------------------------------------------------------------------------+
| Processes: |
| GPU GI CI PID Type Process name GPU Memory |
| ID ID Usage |
|=============================================================================|
| 0 N/A N/A 1316 G /usr/lib/xorg/Xorg 45MiB |
+-----------------------------------------------------------------------------+```
This problem is like chasing a chicken. Yes, the XOrg burn is gone in hybrid mode (updated popos 2204; nvidia 525.105.17), but I'm seeing the "closed laptop screen"-induced sluggishness, too. Terminal window typing is very slow, while the mouse remains as responsive as usual. Additionally, re-opening the laptop so that the screen is active eliminates the sluggishness.
attached journalctl --user output between two cycles of lid-closed and lid-open timestamps found in --system. Its all greek to me, but there are what appear to be multiple attempts and failures to do something logged here. Maybe something will look suspicious to someone who knows what they're doing. Good luck.
and a fun variant. I shut the lid, then rebooted from CLI, in order to boot with the lid closed, in hybrid mode, with the external monitor connected. It took a bit for the laptop to figure out the external monitor needed the login screen. Entering password was sluggish. But after entering and accepting my password, the laptop went to sleep (attached file, line #1386: PM Suspend). All of the ACPI errors that follow that line I usually see on my console resuming from a suspend. Maybe related, maybe not. If I knew it was definitely not related, I wouldn't bother with it here.
@carywreams Are you able to test a Wayland session? You will need to enable Wayland in the GDM configuration, and change the session started with the cog in the lower left of the login screen:
sudo sed -Ei 's/WaylandEnable=false/WaylandEnable=true/g' /etc/gdm3/custom.conf
@thomas-zimmerman , perhaps. is reverting from wayland a matter of re-subbing false/true ?
also - what is it you'd like me to look for? just sluggishness during login ?
hybrid config...boot with laptop lid closed and external monitor attached ?
The session type when picked at the GDM screen is "sticky" but is easy to swap between with just a login/logout. I have found that a wayland session does not seem to have the very slow bug when on external display (and internal display disabled). This looks more like a bad interaction between the Nvidia driver and Xorg, not elsewhere in the stack.
I've seen this both in hybrid and Nvidia mode for the Nvidia driver. It seems to happen most often on a HDMI connection to the external monitor.
@thomas-zimmerman ,
...with laptop lid closed, ...
edited /etc/gdm3/custom.conf as suggested
system76-power graphics hybrid
closes lid, external monitor attached and active
shutdown -r now
system76-power graphics nvidia
shutdown -r now
Thinking the sluggish entry of password characters may have been due to X11 | Wayland selection, I repeat the switch to hybrid mode. It was not. The sluggishness of the Display Manager followed HYBRID mode:
system76-power graphics hybrid
shutdown -r now
While likely a "behavior" related to wayland and pop os, rather than nvidia and X11, I am recording the tiling issues here in the event th at both issues are somehow interrelated.
Additional notes on screen tiling:
Fresh install today, came up with the same issue again.
Settings said they were using Nvidia graphics, I ran this regardless:
system76-power graphics nvidia
After a quick reboot all my electron-based apps running proper again
I'll add my observations as well, running a 3070 mobile chip with a 11th gen i9 in a ASUS ROG Zephyrus, using X11 everything becomes super laggy once I plug in my external monitor over Thunderbolt but as soon as I enabled and logged in with Wayland everything is running smooth. This is with Hybrid mode.
I've also verified the same behavior with Integrated only graphics, so seems Wayland is the real solution here.
So here's hoping Wayland and NVIDIA becoming better and better together :)
That's still a problem. I have an AN515-47-R9ES and the problem persists when I close the notebook lid and the external monitor is slow except for the mouse pointer.
TLDR: My setting was on "nvidia graphics" by default, but still bad performance, changed to a different setting, then changed back to "nvidia graphics" now all working great.
it's solved for me. I just selected "integrated graphics", restarted, this it didn't even recognise my 2 external monitors, then I selected again "nvidia graphics", restarted and boom, everything working very smothly.
Basically I changed and changed back the settings. they were originally on "nvidia graphics" and it was painfully laggy.
asus zenbook 15 pro Core™ i7-10870H GeForce GTX 1650 Ti Mobile, driver
Pop! OS 22.04 LTS nvidia-driver 470.199.02
@MlopesD The bug is specifically about using Hybrid mode. NVIDIA mode has historically been fine with external displays on machines that have been affected by the bug. Glad to hear the NVIDIA mode workaround is still effective though.
@leviport What I'm trying to explain is that they were originally on Nvidia graphics, but it wasn't working, it was very laggy.
I believe they appear as default on "Nvidia graphics", but it's a false statement, they are simply on another setting.
this was confusing at the beginning because, for everyone, that setting was working, but for me that setting was the default one and was already selected, but not working at all. So I thought of doing the change, and then do the change back, and it worked.
Don't know if this will help in solving the issue, but I'll just write about my own situation.
Currently I have an HP Omen RTX 3060 laptop with 1440p 165Hz internal display. Without an external monitor I have no issues whatsoever. Connecting the external display introduces heavy lag, pretty much becomes unusable. But it only happens on the external monitor, move the app to the internal display and all issues are gone.
X11 + NVIDIA Only or Wayland + Hybrid Mode seems to solve most of the issues, at least when doing basic stuff. Can't test Wayland + NVIDIA Only, because for some reason I get stuck in login screen loop.
But in games, doesn't matter which mode I choose, on external monitor even though fps stays at 60, it feels more like 25-30fps. And again, if I disconnect the external monitor and use only the internal, issues are gone.
I'm on Pop_OS! 22.04 NVIDIA LTS with NVIDIA Proprietary Driver 545.29.06
I am also affected by exactly the same situation as described by @checkinindza. I have a Legion 7 with NVidia 3070, and an AMD Ryzen 7 5800H. Nvidia drivers 545, kernel 6.7.5.
I think the OS doesn't matter... this issue is unique to AMD + NVidia + hybrid combo, and it seems to come from some driver (probably amdgpu).
I have this issue for 2 years now (basically ever since I got the laptop), and at this point I think I will just never buy NVidia again...
I am also affected by exactly the same situation as described by @checkinindza. I have a Legion 7 with NVidia 3070, and an AMD Ryzen 7 5800H. Nvidia drivers 545, kernel 6.7.5.
I think the OS doesn't matter... this issue is unique to AMD + NVidia + hybrid combo, and it seems to come from some driver (probably amdgpu).
I have this issue for 2 years now (basically ever since I got the laptop), and at this point I think I will just never buy NVidia again...
OS does matter. I hopped to EndeavourOS with KDE and the situation improved quite a lot. While doing basic usage I have no issues whatsoever and gaming improved quite a bit. It ain't perfect, that's for sure. But it's much better than it was on Pop_OS!.
Same situation here, Nvidia + AMDGpu causes freezes of external display, on nvidia developers forum theres topic about bug in drivers: https://forums.developer.nvidia.com/t/external-monitor-freezes-when-using-dedicated-gpu/265406/31
for me helped using only Nvidia GPU and set it to max performance in nvidia settings...
If I am running oryp6 in hybrid mode, connect an external display, then close the lid, the external display is set as the primary as expected, but the performance of the desktop on the external display is basically unusable. The mouse cursor moves around at the usual speed, but everything else seems to be lagging behind by one or two seconds.
Nvidia mode still works as expected, so that can be used for the time being if someone wants to use external displays with the internal turned off.