Integrated GPU is not (fully) used / Responsiveness issue

I am trying to set this up, and it is not always clear, what to do/ what is going on.
Currently, X.org log says:

(WW) Warning, couldn’t open module intel
(EE) Failed to load module “intel” (module does not exist, 0)

/usr/lib64/xorg/modules/drivers/intel_drv.so is not present,
swupd repair does nothing helpful;
And the whole interface works with a little delay (compared to any other system), as if acceleration was turned off.

Where to look?


Even after switching to Nvidia GPU, lag is present. No matter what key you press, there is 250~ ms delay. I really need some help here. Just mere reinstall is a shame.
(EE) Failed to load module "nv" (module does not exist, 0) added to X.org log :slight_smile:


Cruel-pit (for this particular case) was:

Experimenting with Cuda and Nvidia drivers quickly clogged free space without me noticing it.
Getting free space to 10 % of drive capacity lowered delay significantly.

Meantime I accidentally found out that while Firefox behaves badly, simultaneously launching Slimjet on contrast showed virtually no delay or close-to-no. The same bad behaviour was displayed by Gnome terminal. (So is a software issue. Not drivers or anything.)

Afterwards I have found that fixing very-very-very odd delay of keyboard input (omnibox, inputs, forms) requires:

  • setting firefox.conf (you can find examples on the forum/ in mentioned repos)
    (export LD_LIBRARY_PATH=/usr/local/lib:/usr/local/lib64)
    or/and/and-or
  • compiling ffmpeg with hardware acceleration flags.
    (Previously it was not able to playback HLS, H264, some audio.)

(Not sure about why Terminal showed same behaviour, but that is for the later to discover :smiley: Also I totally forgot to mention that after booting into installation media – delay persisted. Once again: software issue.
One more thing: on the same hardware, under different OS Firefox showed the same behaviour, while native browser was smooth as butter.)

I replied to you in another topic. Follow the steps there to install the 520 driver. This is the preferred version for Optimus-based HW configuration.

Perhaps you may want Intel as the primary GPU.
See /etc/X11/xorg.conf.d/nvidia-drm-outputclass.conf
Comment the two lines and reboot.

Section "OutputClass"
    Identifier "nvidia"
    MatchDriver "nvidia-drm"
    Driver "nvidia"
    Option "AllowEmptyInitialConfiguration"
#   Option "PrimaryGPU" "yes" # This can be commented if wanted Intel as primary GPU
    Option "SLI" "Auto"
    Option "BaseMosaic" "on"
EndSection

Section "OutputClass"
    Identifier "intel"
    MatchDriver "i915"
    Driver "modesetting"
#   Option "AccelMethod" "none" # Comment when using Intel as primary
EndSection

When Intel is the main GPU, folks on the web offload some applications to the NVIDIA GPU by setting two environment variables. Then, run the application.

export __NV_PRIME_RENDER_OFFLOAD=1
export __GLX_VENDOR_LIBRARY_NAME=nvidia

I’m unable to assist further with Optimus configurations. I have a desktop system.

1 Like

This totally worked. (Had to remove /etc/X11/xorg.conf as well.)
Now system is matching live USB performance.
With 50–200 ms keyboard lag :smile:

(When system initially was running off Nvidia GPU, for some reason, even launching Firefox with several windows could take minutes.)

Nvidia's “acceleration”

This requires way more effort than I initially thought. Maybe later I’ll try to compile intel_drv.so.
Last note: systemd.unit=multi-user.target is very useful in such tasks. And it is only place where no lag happens :smile: This mode can be set during booting by pressing Space and then E for kernel’s boot arguments editing.

Thank you very much.

1 Like

Thank you, @leiniercs for the tip.

Added to people/system simulation. :melting_face: Thank you for the missing tip.

Or " 3 " with a space, short for systemd.unit=multi-user.target.

Likewise! :smiling_face_with_three_hearts: I’m unable to test Optimus configurations, because I have a desktop PC. I added this topic URL to the troubleshooting section.

Or (from graphical.target) “sudo systemctl isolate multi-user.target”, to avoid having to press a key at the right moment

1 Like

Thanks :melting_face: I updated the repo accordingly.