A guide to Nvidia Optimus on Dell PCs with an Ubuntu Operating System

A guide to Nvidia Optimus on Dell PCs with an Ubuntu Operating System

This article provides information about the Nvidia Optimus Technology on a Dell PC with Ubuntu as the primary operating system.

Table of Contents:

  1. Introduction
  2. Problem
  3. Solution

1. Introduction

This article is about the Nvidia Optimus Technology and it's compatibility with the Ubuntu operating system.

Nvidia Optimus is something Nvidia invented to swap graphics support between the onboard Intel GPU and the discrete Nvidia GPU. It's commonly referred to as "Discrete Switching". This is something that is seen on Notebook and AIO (All in One) systems. The purpose behind the technology is to extend battery life and lower power consumption by switching applications which don't need high end graphics to the onboard GPU, whilst saving those applications which require high end graphics to use the discrete GPU.

In Ubuntu the term for multiple GPUs is "Hybrid Graphics". An application called VGA_switcheroo was usually used to resolve these multiple GPUs, however it does not support those notebooks with Optimus that don't use a hardware multiplexer. It's only since Ubuntu 14.04 that there is support built in to the kernel for this technology.

We'll go into a bit of detail below as to why and then explain what options you have.

Back to Top

2. Problem

Nvidia did not support the Optimus technology on Ubuntu. While it did give linux drivers for it's discrete GPUs, it never had direct support for this particular hardware setup. Your options where usually to turn either the integrated or discrete GPU off and use one of them for everything or try and configure Bumblebee on your system. (This could be difficult if you didn't have the option to use Nvidia only in your BIOS.)

The Bumblebee project was until recently, as good as it got in terms of support for Optimus hybrid graphics on Ubuntu. You could assign applications via the CLI (Command Line Interface) (i.e. 'optirun vlc') if you had configured Bumblebee correctly, but getting things like HDMI to work was tricky.

It's been a long wait for Nvidia to release any support for Optimus. (There still isn't direct support for discrete switching at the time this was written.) We can however now choose easily between the integrated or discrete GPU due to Ubuntu 14.04 being the first kernal to support using the nvidia-prime and the nvidia-331 drivers. You will still need to restart your session (achieved by logout and login) after each configuration change in order for the change to take effect. There is an applet for quick switching, which we'll cover in the next section.

Note: With the continuing release of newer versions of both the Ubuntu operating systems and NVidia drivers I would recommend checking the following link for the latest versions available for download. The steps will remain the same, but the driver revision will need updated:

Back to Top

3. Solution

This guide assumes you've got Ubuntu 14.04 or a more recent revision installed and ready to go.

Note: The CLI (Command Line Interface) is also known as the Terminal Application or window. The keyboard Shortcut for opening this across the majority of Ubuntu builds is (CTRL + ALT + T).

If you aren't working with a clean install and have previously installed packages like Bumblebee, etc, then run the following command before installing the new packages :

sudo apt-get purge libvdpau-va-gl1 bumblebee* nvidia*

There are two ways to go about installing the new packages :

  1. You can use the GUI (Graphical User Interface) and the Driver Manager. Open the Additional Drivers application and select the correct Nvidia release for you (Nvidia-331 is currently recommended.) and apply changes.

  2. You can also do it using the CLI (Command Line Interface) by installing :

    sudo apt-get install nvidia-331 nvidia-settings nvidia-prime

    follow this by a reboot.

Switch between Nvidia and non-Nvidia Cards (i.e. Intel)
  1. You can switch between Nvidia and non-Nvidia (i.e. Intel) cards by pressing Alt + F2 keys together or by typing in Terminal :


    to bring up a GUI where you can choose the desired card, then log out and log back in.

  2. Using CLI you can set which card to use as default:

    sudo prime-select intel <or nvidia>

    requires a reboot to set changes.

  3. You can also switch cards using:

    sudo prime-switch intel <or nvidia>

    requires a reboot to set changes.

Note: A reboot can be achieved simply by logging out and back in.
sudo service lightdm restart
  1. In order to verify which card is currently running, use the command:

    sudo prime-select query

Whilst this doesn't resolve all of the issues seen with Optimus and Ubuntu, at least it's a simple answer with proper proprietary support. You still have the option to decide to go with either the integrated or discrete graphics alone, if that suits you better.

Back to Top

Additional Information :

Software support is provided by Canonical through the following methods:
Technical Support is provided by Dell :

Back to Top

Article ID: SLN298431

Last Date Modified: 10/13/2017 03:27 AM

Rate this article

Easy to understand
Was this article helpful?
Yes No
Send us feedback
Comments cannot contain these special characters: <>()\
Sorry, our feedback system is currently down. Please try again later.

Thank you for your feedback.