Gnome suddenly switching from hardware GPU to llvmpipe

13,939

The simple way of solving it was to restart the computer. Once at the login screen press Alt+Ctrl+F2 and logging in using your credentials. After that, assuming you are using gdm, run sudo systemctl stop gdm3. Then, find a way to reinstall the graphics driver that you are using. If it is the proprietary Nvidia one, run the shell script that you used to install it in the first place.

Share:
13,939

Related videos on Youtube

Ohunter
Author by

Ohunter

Updated on September 18, 2022

Comments

  • Ohunter
    Ohunter over 1 year

    After I shut down my computer last night and booted it up this morning I come to find that the graphics device that Gnome chose to use llvmpipe for its graphics rather than my physical GPU. As a result, I am stuck with worse performance, smaller resolution, and god knows what else. Let me just make it clear that I have the proprietary Nvidia drivers installed as the performance gain is significant enough for me to care.

    If I run the following command:

    lspci -vnnn | perl -lne 'print if /^\d+\:.+(\[\S+\:\S+\])/' | grep VGA
    

    This is the output:

    01:00.0 VGA compatible controller [0300]: NVIDIA Corporation GP102 [GeForce GTX 1080 Ti] [10de:1b06] (rev a1) (prog-if 00 [VGA controller])
    

    If I run this command:

    glxinfo|egrep "OpenGL vendor|OpenGL renderer"
    

    I get this output:

    OpenGL vendor string: VMware, Inc.
    OpenGL renderer string: llvmpipe (LLVM 8.0, 256 bits)
    

    Is there a quick and easy way other than reinstalling that would result in Gnome using my GPU rather than llvmpipe?

    I am running Ubuntu 19.04

    I piped journalctl -b into a file and extracted all of the occurrences of ee or failed as requested. Due to character limitations the log can be found here


    Jun 05 14:28:23 linux-8700k /usr/lib/gdm3/gdm-x-session[2504]: 
    (EE) NVIDIA: Failed to initialize the NVIDIA kernel module. Please see the
    system's kernel log for additional error messages 
    
    • Rinzwind
      Rinzwind almost 5 years
      Check journalctl -b for errors (probably grep for (ee) or failed). add results to the question please :) Are you sure you did not do an update? This reads like you lost a symlink to libglx.so. I believe it should be somewhere in /usr/lib/nvidia-nnn` where nnn is the driver number. "Is there a quick and easy way other than reinstalling" I would start with reinstalling the nvidia driver ;)
    • Ohunter
      Ohunter almost 5 years
      You sir deseve a medal... I have experienced it before but for some reason I couldn't fix it.
    • Ohunter
      Ohunter almost 5 years
      Since I restarted my computer to fix it, I no longer have access to that journal (I think at least)
    • Admin
      Admin almost 5 years
      Don't forget to disable Secure Boot.
    • Ohunter
      Ohunter almost 5 years
      I sort of need it in order to run windows tho
    • Admin
      Admin almost 5 years
      No, you certainly don't need it to run Windows and that's exactly what's preventing the (unsigned) Nvidia drivers from loading, that is the root cause of your problem. Signing drivers for Secure Boot is almost an expert task so much easier to just disable it. And, of course, ignore the answer below, for this reason and the others I commented there.
    • Admin
      Admin almost 5 years
      @Rinzwind In this cases it's almost always Secure Boot. Reinstalling isn't necessary and wouldn't solve the problem.
  • Heng Sengthai
    Heng Sengthai almost 5 years
    Drivers are already installed and if reinstall is needed we prefer to do it from the official repository, not running a script.
  • Ohunter
    Ohunter almost 5 years
    I mean... The official Nvidia drivers are literally a shell script
  • Heng Sengthai
    Heng Sengthai almost 5 years
    We have the official Nvidia drivers already packaged and tested, we don't recommend using the binaries downloaded from Nvidia. Also those can be installed with a single command, no neef to stop anything, or even entirely in GUI with Additional Drivers. That is the Ubuntu way.
  • Ohunter
    Ohunter almost 5 years
    That might be the Ubuntu way, but it is certainly not the Unix way. Also your suggested solution only applies to Ubuntu and it's derivatives. My suggested solution applies to far more than that
  • Heng Sengthai
    Heng Sengthai almost 5 years
    In case you haven't noticed, you're at AskUbuntu. Q&A should reflect that and only Ubuntu and official derivatives are on-topic. And, if that wasn't reason enough, your method has the not-so-small inconvenient of forcing reinstalling for every new kernel version. So, really, why make this so more difficult than it should be?
  • Heng Sengthai
    Heng Sengthai almost 5 years
    Also please read my comments in the question. The problem has been identified and obviously reinstalling the drivers, regardless of the method, wouldn't solve it.