How to get NVidia Pascal running fast? (I want Nouveau not llvmpipe)

New to Arch, not new to Linux.

I just installed. I had issues logging in, but got around it by logging in with “Plasma (X11)” instead of “Plasma (Wayland). Now, I’d like to get the video card running faster. When I run glmark2, my score is 8. In Ubuntu, it is 10,000. And VLC plays my movies at 3 frames-per-second.

“inxi -Gxx” says I’ve the nouveau driver. But OpenGl renderer says “llvmpipe (LLVM 21.1.6 128 bits)”.

The Live USB installer had that set to “NV137”.

How do I get faster video?

First would be to show what exact Hardware you have:
inxi -Gaz

It should use the same OpenGL NV137 on installed system. Could be it is running on the igpu on a notebook with hybrid graphics?

You could go to see if NVK nouveau is working nicely for you, if you want to stay with the open source driver.

sudo pacman -Syu vulkan-nouveau
And reboot ..

Or go to build install nvidia-580xx-dkms from AUR to switch to Nvidia legacy drivers.

yay -Syu nvidia-580xx-dkms nvidia-580xx-utils
and reboot…

I have a desktop.The motherboard probably has another HDMI port that I’m not using.

$ inxi -Gaz

Graphics: 
  Device-1: NVIDIA GP107 \[GeForce GTX 1050\] vendor: Gigabyte driver: nouveau 
    v: kernel non-free: 550-580.xx+ status: current (as of 2025-11; 
    EOL\~2026-12-xx) arch: Pascal code: GP10x process: TSMC 16nm 
    built: 2016-2021 pcie: gen: 1 speed: 2.5 GT/s lanes: 16 link-max: gen: 3 
    speed: 8 GT/s ports: active: HDMI-A-1 empty: DP-1,DVI-D-1 bus-ID: 01:00.0 
    chip-ID: 10de:1c81 class-ID: 0300 temp: 49.0 C 
  Display: x11 server: X.Org v: 21.1.21 with: Xwayland v: 24.1.9 
    compositor: kwin_x11 driver: X: loaded: nouveau unloaded: modesetting 
    alternate: fbdev,nv,vesa dri: nouveau gpu: nouveau display-ID: :0 
    screens: 1 
  Screen-1: 0 s-res: 3840x2160 s-dpi: 96 s-size: 1016x571mm (40.00x22.48") 
    s-diag: 1165mm (45.88") 
  Monitor-1: HDMI-A-1 mapped: HDMI-1 model: Dell S3221QS serial: <filter> 
    built: 2024 res: mode: 3840x2160 hz: 60 scale: 100% (1) dpi: 140 gamma: 1.2 
    size: 697x392mm (27.44x15.43") diag: 806mm (31.7") ratio: 16:9 modes: 
    max: 3840x2160 min: 720x400 
  API: EGL v: 1.5 hw: drv: nvidia nouveau platforms: device: 0 drv: nouveau 
    device: 1 drv: swrast gbm: drv: nouveau surfaceless: drv: nouveau x11: 
    drv: swrast inactive: wayland 
  API: OpenGL v: 4.5 compat-v: 4.3 vendor: mesa v: 25.3.4-arch1.1 glx-v: 1.4 
    direct-render: yes renderer: llvmpipe (LLVM 21.1.6 128 bits) 
    device-ID: ffffffff:ffffffff memory: 7.53 GiB unified: yes 
  API: Vulkan Message: No Vulkan data available. 
  Info: Tools: api: clinfo, eglinfo, glxinfo, vulkaninfo 
    de: kscreen-console,kscreen-doctor wl: wayland-info 
    x11: xdpyinfo, xprop, xrandr

I ran:

sudo pacman -Syu vulkan-nouveau

I now have Vulkan with driver “mesa nvk”. But OpenGL renderer is still llvmpipe, not NV137.

show installed packages related please
pacman -Qs nvidia
pacman -Qs nouveau

and output of:

sudo dmesg | grep -i nouveau

You may want Add nouveau.config=NvGspRm=1 as a kernel parameter

Needs to rebuild initramfs in case.
sudo reinstall-kernels (systemd-boot)
sudo dracut-rebuild (Grub)

Something is failing on initialising nouveau on bootup.

If you want me to have a look into boot send me boot journal, best not posting here use a direct message to me instead (boot journal can include serials and stuff)

journalctl -b -o | eos-sendlog

Thanks for your help. Here’s most of what you asked for!

$ pacman -Qs nvidia 
local/libvdpau 1.5-3 
    Nvidia VDPAU library 
local/linux-firmware-nvidia 20260110-1 
    Firmware files for Linux - Firmware for NVIDIA GPUs and SoCs 
local/vulkan-nouveau 1:25.3.4-1 
    Open-source Vulkan driver for Nvidia GPUs 
local/xf86-video-nouveau 1.0.18-1 (xorg-drivers) 
    Open Source 3D acceleration driver for nVidia cards 
$ pacman -Qs nouveau 
local/vulkan-nouveau 1:25.3.4-1 
    Open-source Vulkan driver for Nvidia GPUs 
local/xf86-video-nouveau 1.0.18-1 (xorg-drivers) 
    Open Source 3D acceleration driver for nVidia cards

“modinfo nouveau” doesn’t show a parameter named NvGspRm. Will that do anything?

“journalctl -b” doesn’t show any obvious errors or warnings. A few failures are:

$ journalctl -b | grep -i fail
Feb 07 18:00:18 portia kernel: Bluetooth: hci0: Opcode 0xfc1e failed: -16
Feb 07 18:00:18 portia (udev-worker)[595]: cfg80211: Process '/usr/bin/set-wireless-regdom' failed with exit code 1.
Feb 07 18:00:22 portia dbus-broker-launch[731]: Activation request for 'org.freedesktop.home1' failed: The systemd unit 'dbus-org.freedesktop.home1.service' could not be found.
Feb 07 18:00:25 portia dbus-broker-launch[731]: Activation request for 'org.freedesktop.resolve1' failed: The systemd unit 'dbus-org.freedesktop.resolve1.service' could not be found.
Feb 07 18:00:32 portia org_kde_powerdevil[1132]: Failed to create wl_display (No such file or directory)
Feb 07 18:00:33 portia dbus-broker-launch[731]: Activation request for 'org.freedesktop.ModemManager1' failed: The systemd unit 'dbus-org.freedesktop.ModemManager1.service' could not be found.
Feb 07 18:00:33 portia kded6[1039]: Failed enumerating MM objects: "org.freedesktop.DBus.Error.NameHasNoOwner" 
                                     "Could not activate remote peer 'org.freedesktop.ModemManager1': activation request failed: unknown unit"
Feb 07 18:00:34 portia org_kde_powerdevil[1132]: org.kde.powerdevil.chargethresholdhelper.getthreshold failed "Charge thresholds are not supported by the kernel for this hardware"
Feb 07 18:00:34 portia org_kde_powerdevil[1132]: org.kde.powerdevil.backlighthelper.brightness failed
Feb 07 18:00:36 portia org_kde_powerdevil[1132]: org.kde.powerdevil.chargethresholdhelper.getthreshold failed "Charge thresholds are not supported by the kernel for this hardware"
Feb 07 18:00:36 portia kwin_x11[1040]: "\"fsrestore1\" - conversion of \"0,0,0,0\" to QRect failed"
Feb 07 18:00:36 portia kwin_x11[1040]: "\"fsrestore2\" - conversion of \"0,0,0,0\" to QRect failed"
Feb 07 18:00:36 portia systemd[931]: app-\x2fusr\x2fbin\x2ffirewall\x2dapplet@403f021f35ad4980ad3d43d078088d1c.service: Main process exited, code=exited, status=1/FAILURE
Feb 07 18:00:36 portia systemd[931]: app-\x2fusr\x2fbin\x2ffirewall\x2dapplet@403f021f35ad4980ad3d43d078088d1c.service: Failed with result 'exit-code'.
...

Seaching for nouveau gets this:

$ journalctl -b | grep -i nouveau
Feb 07 18:00:19 portia kernel: nouveau 0000:01:00.0: NVIDIA GP107 (137000a1) 
Feb 07 18:00:19 portia kernel: nouveau 0000:01:00.0: bios: version 86.07.39.40.9b 
Feb 07 18:00:19 portia kernel: nouveau 0000:01:00.0: pmu: firmware unavailable 
Feb 07 18:00:19 portia kernel: nouveau 0000:01:00.0: vgaarb: deactivate vga console 
Feb 07 18:00:19 portia kernel: nouveau 0000:01:00.0: fb: 2048 MiB GDDR5 
Feb 07 18:00:19 portia kernel: nouveau 0000:01:00.0: drm: VRAM: 2048 MiB 
Feb 07 18:00:19 portia kernel: nouveau 0000:01:00.0: drm: GART: 536870912 MiB 
Feb 07 18:00:19 portia kernel: nouveau 0000:01:00.0: drm: BIT table 'A' not found 
Feb 07 18:00:19 portia kernel: nouveau 0000:01:00.0: drm: BIT table 'L' not found 
Feb 07 18:00:19 portia kernel: nouveau 0000:01:00.0: drm: TMDS table version 2.0 
Feb 07 18:00:19 portia kernel: nouveau 0000:01:00.0: drm: MM: using COPY for buffer copies 
Feb 07 18:00:19 portia kernel: snd_hda_intel 0000:01:00.1: bound 0000:01:00.0 (ops nv50_audio_component_bind_ops [nouveau]) 
Feb 07 18:00:19 portia kernel: nouveau 0000:01:00.0: [drm] Registered 4 planes with drm panic 
Feb 07 18:00:19 portia kernel: [drm] Initialized nouveau 1.4.0 for 0000:01:00.0 on minor 0 
Feb 07 18:00:19 portia kernel: fbcon: nouveaudrmfb (fb0) is primary device 
Feb 07 18:00:19 portia kernel: nouveau 0000:01:00.0: [drm] fb0: nouveaudrmfb frame buffer device 
Feb 07 18:00:19 portia kernel: nouveau 0000:01:00.0: drm: Disabling PCI power management to avoid bug 
Feb 07 18:00:21 portia kernel: nouveau 0000:01:00.0: bus: MMIO read of 00000000 FAULT at 122124 [ PRIVRING ] 
Feb 07 18:00:21 portia kernel: nouveau 0000:01:00.0: gr: intr 00000040 
Feb 07 19:49:08 portia kernel: nouveau 0000:01:00.0: bus: MMIO read of 00000000 FAULT at 122124 [ PRIVRING ]

I hope that identifies the problem! Thanks for your help!

Running “LIBGL_DEBUG=verbose glxinfo -B” said “screen 0 does not appear to be DRI3 capable”. I’m not sure what that means, but ChatGPT said to put in an override to allow DRI3.

Run “sudo nano /etc/X11/xorg.conf.d/20-nouveau.conf” and add this:

Section "Device"
    Identifier "Nouveau"
    Driver "nouveau"
    Option "DRI" "3"
EndSection

then reboot.

My OpenGL renderer is now NV137. glmark2 has a score of 569.

That’s better, but not the 10,000 I got under Ubuntu with native drivers.

Not sure why you want to use nouveau instead of nvidia-580xx-dkms from the AUR if speed is what you are after.

1 Like

I don’t get it either :joy:

this is not needed. and may the issue on your side already.
Recommendation is to use the inside kernel modesetting nouveau drivers instead.
so go uninstall this package.
sudo pacman -R xf86-video-nouveau

Also it shows:
pmu: firmware unavailable

what is more looking like a general issue with nouveau and the GPU model..

sounds like there it was also running on nvidia drivers not nouveau?

And indeed full accelleration will only be giving with propritary Nvidia drivers.

I’m not speed obsessed, but I wanted a glmark2 score a lot higher than 8, which is what I got with the llvmpipe. I thought the open nouveau driver would do better than 569!

I’ve had trouble with Arch so far and Ubuntu is running (and has the nvidia driver) so I may stop here and return to Ubuntu.

If you’re considering Arch because it is a rolling release, and wanted more up-to-date packages/drivers, you could try openSUSE Tumbleweed or Siduction Linux instead. The latter being Debian-based, which would be more familiar to an Ubuntu user.

Another option is Sparky Linux, which has a semi-rolling version that uses Debian’s testing repo, and includes some special editions for gaming and multimedia.

I’d recommend openSUSE, but, like Arch, it requires that you do some reading to get the best out of its rolling release model.

1 Like

i do think the the main issue is the nouveau drivber for you related to your GPU Model.
I have a 3060 here and if i run this one on nouveau and vulkan it is running at big speeds fully usable even in Games.

The way to go for yor issue is (on Arch/based) currently to use the legacy driver from AUR nvidia-580xx-dkms nvidia-580xx-utils and indeed remove vulkan-nouveau xf86-video-nouveau

what you may hit is something like this too:

but if i were you i would first switch to 580 legacy drivers and see what happen.

I decided to try the out-of-date official nvidia drivers. Here’s what I did:

# Install official nvidia drivers:
yay -Syu nvidia-580xx-dkms nvidia-580xx-utils nvidia-580xx-settings
# I hit return 3 times... I assume the default is fine.
# Lots of hitting "Y" to continue.

# Create file to disable nouveau
sudo nano /etc/modprobe.d/blacklist-nouveau.conf 
# and add contents:
blacklist nouveau
options nouveau modeset=0

# Remove unneeded packages
sudo pacman -Rns xf86-video-nouveau
sudo pacman -Rns vulkan-nouveau

# Remove file necessary for nouveau
sudo mv /etc/X11/xorg.conf.d/20-nouveau.conf /etc/X11/xorg.conf.d/20-nouveau.conf.bak

# Rebuild initial RAM filesystem
sudo pacman -S mkinitcpio
sudo mkinitcpio -P

# reboot

glmark2 now has a score of 11502. Playing a movie in VLC (on a huge monitor) is now smooth.

this is not used by default on EndeavourOS we use dracut instead of mkinitcpio.

You should not install mkinitcpio here..

rebuild initramfs in case.
sudo reinstall-kernels (systemd-boot)
sudo dracut-rebuild (Grub)

1 Like