You are not logged in.

#1 2021-01-12 18:57:09

OR1ON
Member
Registered: 2021-01-12
Posts: 5

GLX loading issues with nvidia-390xx

Thank you for the terrific effort jonathon!
I can confirm the driver now works on 5.10.6

However I am experiencing performance issues.
The GPU has low utilization percentage during heavy GPU loads.
I have experienced this many times before, and usually a simple driver reinstall fixed the problem, however now I can't seem to find a fix.

I am slowly working through the readme posted at top. So far everything looks fine.
Anyone have suggestions of some key areas where to begin looking for the issue?

Offline

#2 2021-01-14 22:14:15

jonathon
Member
Registered: 2016-09-19
Posts: 67

Re: GLX loading issues with nvidia-390xx

OR1ON wrote:

The GPU has low utilization percentage during heavy GPU loads.

I'm not convinced this is limited to 390xx - I've been seeing periodic (but not repeatable) performance issues with games on 5.10.[5-7] and my amdgpu laptop akin to the GPU not "spinning up" or being stuck in a low-power profile.

Maybe compare `linux` and `linux-zen` to see if it might be kernel config, or `linux-lts` or maybe 5.9 or an older 5.10 (might be a regression in 5.10)? Also, try rebuilding 390xx without applying the 4.16 patch; I'm not sure if other changes have made that one unnecessary.

Offline

#3 2021-01-16 01:19:49

OR1ON
Member
Registered: 2021-01-12
Posts: 5

Re: GLX loading issues with nvidia-390xx

Trying kernel 5.9.14 yield the same results (low GPU usage).
Kernel 5.9.14 was working fine on the previous Nvidia 390xx driver. I also rolled back one more to test with the same results as noted below.

Looking further I notice all CPU cores/threads being used at a high percentage.
On a 3700X Xonotic uses all cores and threads at around 60%. All other video related applications use all cores/threads. None use more than about 25% of the GPU.

A quick look at glxgears, Xonotic and youtube all yield high CPU core/thread usage.
Xonotic is a single core application, and this definitely should not be happening (as far as I understand).
While watching a Youtube video, if I minimize the browser (so the video isn't displayed but sill playing) CPU usage returns to normal with a couple cores being used at very low rates, and GPU usage goes to zero.

At this point using three different kernels and three applications with the same issue the only common denominator is the Nvidia driver, and seems the natural next step to investigate.

I have looked through the Nvidia troubleshooting documentation and have found nothing out of the ordinary on my system.

Can you point me to how to build 390xx without applying the 4.16 patch? I simply apply yay -S nvidia-390xx .I'm still quite new to all things Linux.

Thank you again jonathon for your help and for keeping us going on these older GPUs (as I wait my turn trying to find a new GPU in stock smile )

Offline

#4 2021-01-16 01:39:37

loqs
Member
Registered: 2014-03-06
Posts: 13,008

Re: GLX loading issues with nvidia-390xx

@OR1ON Comment out https://aur.archlinux.org/cgit/aur.git/ … -390xx#n33 to disable applying the patch

    patch -Np1 -i ../kernel-4.16.patch

Offline

#5 2021-01-16 08:44:06

seth
Member
Registered: 2012-09-03
Posts: 18,998

Re: GLX loading issues with nvidia-390xx

@OR1ON also check glxinfo to ensure you're not running on the VESA driver and software acceleration because of a broken driver installation.

Offline

#6 2021-01-16 20:24:35

OR1ON
Member
Registered: 2021-01-12
Posts: 5

Re: GLX loading issues with nvidia-390xx

Commenting out line 33 made no difference.
However that might be expected:

$ glxinfo -B
name of display: :0.0
display: :0  screen: 0
direct rendering: Yes
Extended renderer info (GLX_MESA_query_renderer):
    Vendor: Mesa/X.org (0xffffffff)
    Device: llvmpipe (LLVM 11.0.1, 256 bits) (0xffffffff)
    Version: 20.3.3
    Accelerated: no
    Video memory: 15981MB
    Unified memory: no
    Preferred profile: core (0x1)
    Max core profile version: 4.5
    Max compat profile version: 3.1
    Max GLES1 profile version: 1.1
    Max GLES[23] profile version: 3.2
OpenGL vendor string: Mesa/X.org
OpenGL renderer string: llvmpipe (LLVM 11.0.1, 256 bits)
OpenGL core profile version string: 4.5 (Core Profile) Mesa 20.3.3
OpenGL core profile shading language version string: 4.50
OpenGL core profile context flags: (none)
OpenGL core profile profile mask: core profile

Thank you for the tip seth.
Any ideas where to go from here?

Offline

#7 2021-01-16 20:50:55

seth
Member
Registered: 2012-09-03
Posts: 18,998

Re: GLX loading issues with nvidia-390xx

Post your system journal & Xorg log (either the kernel module or the X11 driver fails)
I think you should open a new thread for this, since your immediate problem doesn't relate to this one.

Offline

#8 2021-01-17 23:32:40

OR1ON
Member
Registered: 2021-01-12
Posts: 5

Re: GLX loading issues with nvidia-390xx

My apologies for posting one last time.
I found the solution to my problem and wanted to leave this here if anyone else needs help with a solution.

I found it odd that on nvidia-settings the driver appears to be loaded and working, but getting such poor performance in certain applications. With opensource driver I could understand, and I know what my GPU is capable of but not doing.
Looking under the OpenGL/GLX Information tab I noticed what I posted earlier, the Nvidia GL modules were not loaded, but the driver was.

Upon further inspection I found this:

$ cat /var/log/Xorg.0.log
(EE) NVIDIA(0): Failed to initialize the GLX module; please check in your X
(EE) NVIDIA(0):     log file that the GLX module has been loaded in your X
(EE) NVIDIA(0):     server, and that the module is the NVIDIA GLX module.  If
(EE) NVIDIA(0):     you continue to encounter problems, Please try
(EE) NVIDIA(0):     reinstalling the NVIDIA driver.

(WW) Open ACPI failed (/var/run/acpid.socket) (No such file or directory)
(II) LoadModule: "glx"
(II) Loading /usr/lib/xorg/modules/extensions/libglx.so
(II) Module glx: vendor="X.Org Foundation"
	compiled for 1.20.10, module version = 1.0.0
	ABI class: X.Org Server Extension, version 10.0
(II) LoadModule: "nvidia"
(II) Loading /usr/lib/xorg/modules/drivers/nvidia_drv.so
(II) Module nvidia: vendor="NVIDIA Corporation"
	compiled for 4.0.2, module version = 1.0.0
	Module class: X.Org Video Driver
(II) NVIDIA dlloader X Driver  390.141  Mon Dec 28 16:20:32 UTC 2020
(II) NVIDIA Unified Driver for all Supported NVIDIA GPUs
(II) Loading sub module "fb"
(II) LoadModule: "fb"
(II) Loading /usr/lib/xorg/modules/libfb.so
(II) Module fb: vendor="X.Org Foundation"
	compiled for 1.20.10, module version = 1.0.0
	ABI class: X.Org ANSI C Emulation, version 0.4
(II) Loading sub module "wfb"
(II) LoadModule: "wfb"
(II) Loading /usr/lib/xorg/modules/libwfb.so
(II) Module wfb: vendor="X.Org Foundation"
	compiled for 1.20.10, module version = 1.0.0
	ABI class: X.Org ANSI C Emulation, version 0.4

This led me to look at these 2 directories with their following files:

/usr/lib/nvidia/xorg/
	libglx.so
	libglx.so.1
	libglx.so.390.14

/usr/lib/xorg/modules/extensions/
	libglx.so

What I did to resolve the issue was to rename the single file:

/usr/lib/xorg/modules/extensions/libglx.so

to:

sudo mv /usr/lib/xorg/modules/extensions/libglx.so /usr/lib/xorg/modules/extensions/libglx.so.bac

Then link a new file to the driver:

sudo ln /usr/lib/nvidia/xorg/libglx.so.390.141 /usr/lib/xorg/modules/extensions/libglx.so

I hope this helps a future someone with this problem.
Thank you again for the effort keeping this driver alive.

Offline

#9 2021-01-18 00:20:40

loqs
Member
Registered: 2014-03-06
Posts: 13,008

Re: GLX loading issues with nvidia-390xx

@OR1ON that should not be needed instead the module should have been loaded as sub module

[    12.210] (II) Loading sub module "glxserver_nvidia"
[    12.210] (II) LoadModule: "glxserver_nvidia"
[    12.210] (II) Loading /usr/lib/nvidia/xorg/libglxserver_nvidia.so
[    12.269] (II) Module glxserver_nvidia: vendor="NVIDIA Corporation"

Offline

#10 2021-01-18 02:55:59

OR1ON
Member
Registered: 2021-01-12
Posts: 5

Re: GLX loading issues with nvidia-390xx

Nothing in the log regarding glxserver_nvidia, and seems to be missing on my machine.

$ locate libglx
/usr/include/glvnd/libglxabi.h
/usr/lib/nvidia/xorg/libglx.so
/usr/lib/nvidia/xorg/libglx.so.1
/usr/lib/nvidia/xorg/libglx.so.390.141
/usr/lib/xorg/modules/extensions/libglx.so

Offline

#11 2021-01-18 04:21:45

loqs
Member
Registered: 2014-03-06
Posts: 13,008

Re: GLX loading issues with nvidia-390xx

Please start a new thread or contact a moderator and ask for your issue to be split off.

Offline

#12 2021-01-18 09:11:53

seth
Member
Registered: 2012-09-03
Posts: 18,998

Re: GLX loading issues with nvidia-390xx

OR1ON wrote:

Then link a new file to the driver:

sudo ln /usr/lib/nvidia/xorg/libglx.so.390.141 /usr/lib/xorg/modules/extensions/libglx.so
I hope this helps a future someone with this problem.

DO. NO. DO. THAT! EVER!

/usr/share/X11/xorg.conf.d/10-nvidia-drm-outputclass.conf extends the ModulePath to resolve the proper libglx.
There's a problem w/ the installation - either the nvidia kernel module is too late, doesn't use DRM (unlikely) or the config file is missing.

Either way, you have to fix *that* - not crosslink libraries. That's just an elaborate way to punch yourself in the face.

Offline

#13 2021-01-18 09:33:39

V1del
Forum Moderator
Registered: 2012-10-16
Posts: 12,246

Re: GLX loading issues with nvidia-390xx

Splitting this off as this has turned into a support thread with little relevance to what the original was about intended to be.

Split from: https://bbs.archlinux.org/viewtopic.php?id=262224

Offline

Board footer

Powered by FluxBB