Ubuntu – NVidia Optimus: how to disable onboard Intel GPU so that NVidia drivers work – other than in BIOS



I have an Acer Aspire V3-571G laptop which has an NVidia GeForce 710M GPU with "Optimus" technology (meaning it is capable of automatically switching between the onboard Intel GPU and the NVidia GPU, in order to optimize battery life)

Recently I installed NVidia's proprietary drivers on Ubuntu (previously I was using nouveau, until I realized that was only using the builtin Intel GPU and wasting the potential of the NVidia GPU).

Starting from then, I've incurred in this bug: https://bugs.launchpad.net/ubuntu/+source/xorg-server/+bug/1353620
that is, the system randomly freezes (i.e. stops responding) from time to time, unless I connect an external monitor, in which case everything works fine.

According to an NVidia technician that replied to a Customer Care ticket I opened, this is due to a complete lack of support of NVidia's linux drivers for Optimus technology.
(yes, a technology they created).

According him, disabling the onboard Intel GPU, which is "usually" done via the BIOS ("usually" is what he said), may fix the issue, avoiding the automatic switching between the two GPU's.


Since there's no way in my computer's BIOS settings to disable Optimus or the onboard GPU so that only the NVidia card is enabled, does anybody know of any way to accomplish that other than the BIOS?

P.S. Please refrain from suggesting Bumblebee, that would be OT. I'll investigate that, but my question here is if there is a way to disable the onboard Intel GPU if such an option is not available in the BIOS.

Best Answer

If you don't have the option to switch GPUs in the BIOS then it's quite likely you have a muxless laptop, where the Nvidia GPU doesn't have direct access to the internal laptop display, and where it wouldn't make sense to switch off the Intel GPU.

Apart from the BIOS, there is a the vga_switcheroo command, which allows one to change which GPU acts as the primary GPU, but this command doesn't work on muxless laptops either -- you're not missing much though, it's tricky to use, and only works on a very limited set of hardware anyway.

It's not that dire though, as you have three options available to you:

  1. Bumblebee (Nvidia)
  2. Nvidia Prime (Nvidia)
  3. Optimus Prime (Nouveau / Proper Linux Way(TM))

Bumblebee and Optimus Prime allow you to use the Intel GPU most of the time, but to offload 3D rendering to the Nvidia GPU on a per program basis, and Nvidia Prime allows you to 'switch' which GPU is active, but using software muxing rather than hardware muxing.

I'd recommend reading an article I've written (Driving Multiple Monitors on an Optimus Laptop) that should hopefully give you a better understanding as to your options, and allow you to confirm whether your laptop definitely is muxless or not.