Very Sluggish on External Monitor

I’m running a 34" ultrawide monitor via HDMI connected to a dock which is connected to my Razer Blade Advance 2020 over USB-C (not Thunderbolt) running Manjaro KDE. When both the laptop display and the external monitor are connected, everything seems to be running as normal. When the laptop lid is closed or the display is set to disabled in Settings > Display and Monitor > Display Configuration, the computer gets very sluggish. Most things move incredibly slowly. Dragging windows, doing anything in the web browser, highlight mouseovers in system settings. This also happens when I don’t use the dock and plug into HDMI directly.

The mouse seems to move at a normal speed and when I’m typing in a terminal window, everything seems fine. I tried Xrender and Open GL 3.1 in the Compositor settings. Xrender seems to make a little difference but the system is still unusable.

As soon as I open the lid, everything goes back to normal on the external monitor. It seems like it might be a GPU issue but I’m not sure where I should be looking to figure that out.

A snapshot of the system log while the laptop lid is closed:

journalctl log with lid closed

Here’s the log from when I opened the monitor right now and the system sped up:

journalctl log after lid opened

Here’s my xrandr output. Notice that it says I’m connected via DP-1-0 even though I’m using HDMI.

xrandr output

And here’s my inxi output:

inxi output

TLDR:
System gets sluggish when an external monitor is connected and the laptop lid is closed or the laptop display is disabled.

2 Likes
  1. Please read this:
    How to provide good information
    and post some more information so we can see what’s really going on. Now we know the symptom of the disease, but we need some more probing to know where the origin lies… :grin:
  2. An inxi --admin --verbosity=7 --filter --no-host --width would be the minimum required information for us to be able to help you. (Personally Identifiable Information like serial numbers and MAC addresses will be filtered out by the above command)
    Also, please copy-paste that output in-between 3 backticks ``` at the beginning and end of the code/text.
  3. Does this also happen when you create a new user and log in there?

:+1:

Thanks for the reply and my apologies for the late response.

I updated my original post with the inxi output you requested. I also tried creating a user and had the same experience. This also happens when at the login greeter and no users are logged in.

I’ve found that using optimus-manager and switching to the nvidia card allows me to turn off the laptop monitor and use the external at normal speed. So this appears to be a GPU issue. I’d prefer to leave optimus-manager in hybrid mode and have the system switch to the dGPU when plugging into the external if possible.

Here’s some other details that might help:

When optimus-manager is in hybrid mode, only /usr/lib/Xorg is being run by the dGPU:

Fri Jul 23 13:27:15 2021       
+-----------------------------------------------------------------------------+
| NVIDIA-SMI 470.42.01    Driver Version: 470.42.01    CUDA Version: 11.4     |
|-------------------------------+----------------------+----------------------+
| 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   49C    P8    15W /  N/A |     94MiB /  7982MiB |     37%      Default |
|                               |                      |                  N/A |
+-------------------------------+----------------------+----------------------+
                                                                               
+-----------------------------------------------------------------------------+
| Processes:                                                                  |
|  GPU   GI   CI        PID   Type   Process name                  GPU Memory |
|        ID   ID                                                   Usage      |
|=============================================================================|
|    0   N/A  N/A      1156      G   /usr/lib/Xorg                      93MiB |
+-----------------------------------------------------------------------------+

But when in nvidia mode, my whole DE is being loaded onto the GPU and Xorg is taking more memory:

Fri Jul 23 13:32:44 2021       
+-----------------------------------------------------------------------------+
| NVIDIA-SMI 470.42.01    Driver Version: 470.42.01    CUDA Version: 11.4     |
|-------------------------------+----------------------+----------------------+
| 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   49C    P8    13W /  N/A |    347MiB /  7982MiB |     10%      Default |
|                               |                      |                  N/A |
+-------------------------------+----------------------+----------------------+
                                                                               
+-----------------------------------------------------------------------------+
| Processes:                                                                  |
|  GPU   GI   CI        PID   Type   Process name                  GPU Memory |
|        ID   ID                                                   Usage      |
|=============================================================================|
|    0   N/A  N/A      7147      G   /usr/lib/Xorg                     233MiB |
|    0   N/A  N/A      7249      G   /usr/bin/kwin_x11                   2MiB |
|    0   N/A  N/A      7298      G   /usr/bin/plasmashell               64MiB |
|    0   N/A  N/A      7328      G   /usr/bin/latte-dock                15MiB |
|    0   N/A  N/A      7431      G   /usr/bin/nextcloud                 12MiB |
|    0   N/A  N/A      7807      G   ...dates/1.8.7/proton-bridge       12MiB |
+-----------------------------------------------------------------------------+

Obviously, this all makes sense, but I’m not sure why my iGPU can’t seem to handle anything when the external is plugged in.

Yeah, that’s how I run and was what I was going to propose to you as a solution.

So if you use the external monitor all or most of the time, just switching to the nVidia permanently is going to make your life much easier. If you use the external monitor infrequently, it’s worth changing to nVidia only when it’s hooked up because you have the 8G VRAM anyway and not using it is not going to extend the life of the card…

:frowning:

1 Like

Alright sounds like that’s the way to go then. Thanks for all your help.

Is there some way to use optimus-manager in hybrid mode and have the DE loaded onto the Nvidia card by default? I sometimes use a Windows VM via QEMU-KVM and I pass the iGPU to the VM via Intel GVT-g. I imagine that’s not going to work with the iGPU off.

1 Like

Yes, and the way I run:

mhwd --listinstalled
> Installed PCI configs:
--------------------------------------------------------------------------------
                  NAME               VERSION          FREEDRIVER           TYPE
--------------------------------------------------------------------------------
          video-nvidia            2020.11.30               false            PCI


Warning: No installed USB configs!

Not that I know of…

:sob:

Haha alright thanks for all your help. Maybe one day Nvidia will be less painful.

1 Like

This topic was automatically closed 15 days after the last reply. New replies are no longer allowed.