Ubuntu – How to get Bumblebee working with a GTX 660M

bumblebeenvidianvidia-optimus

I have a GTX 660M, also an integrated Intel. The Intel runs fine but I couldn't start the Nvidia.

I followed all the steps to install and configure Bumblebee from this tutorial and this other tutorial.

This is the output:

optirun -vv glxspheres
[  706.315737] [DEBUG]Reading file: /etc/bumblebee/bumblebee.conf
[  706.316244] [INFO]Configured driver: nvidia
[  706.444333] [DEBUG]optirun version 3.0.1 starting...
[  706.444367] [DEBUG]Active configuration:
[  706.444374] [DEBUG] bumblebeed config file: /etc/bumblebee/bumblebee.conf
[  706.444380] [DEBUG] X display: :8
[  706.444386] [DEBUG] LD_LIBRARY_PATH: /usr/lib/nvidia-current:/usr/lib32/nvidia-current
[  706.444392] [DEBUG] Socket path: /var/run/bumblebee.socket
[  706.444398] [DEBUG] VGL Compression: proxy
[  708.358088] [INFO]Response: No - error: [XORG] (EE) NVIDIA(0): Failed to assign any connected display devices to X screen 0
[  708.358117] [ERROR]Cannot access secondary GPU - error: [XORG] (EE) NVIDIA(0): Failed to assign any connected display devices to X screen 0
[  708.358125] [DEBUG]Socket closed.<
[  708.358147] [ERROR]Aborting because fallback start is disabled.
[  708.358155] [DEBUG]Killing all remaining processes.

And this is the /var/log/Xorg.8.log file

[ 47.372]

X.Org X Server 1.11.3
Release Date: 2011-12-16
[ 47.372] X Protocol Version 11, Revision 0
[ 47.372] Build Operating System: Linux 2.6.42-26-generic x86_64 Ubuntu
[ 47.372] Current Operating System: Linux babilonia-P170EM 3.2.0-29-generic #46->Ubuntu SMP Fri Jul 27 17:03:23 UTC 2012 x86_64
[ 47.372] Kernel command line: BOOT_IMAGE=/boot/vmlinuz-3.2.0-29-generic
>root=UUID=002bd5b6-9931-48ae-8c5e-2ac9bebe653e ro quiet splash vt.handoff=7
[ 47.372] Build Date: 04 August 2012 01:51:23AM
[ 47.372] xorg-server 2:1.11.4-0ubuntu10.7 (For technical support please see >http://www.ubuntu.com/support)
[ 47.372] Current version of pixman: 0.24.4
[ 47.372] Before reporting problems, check http://wiki.x.org
to make sure that you have the latest version.
[ 47.372] Markers: (–) probed, () from config file, (==) default setting,
(++) from command line, (!!) notice, (II) informational,
(WW) warning, (EE) error, (NI) not implemented, (??) unknown.
[ 47.372] (==) Log file: "/var/log/Xorg.8.log", Time: Tue Aug 21 22:06:06 2012
[ 47.372] (++) Using config file: "/etc/bumblebee/xorg.conf.nvidia"
[ 47.372] (==) Using system config directory "/usr/share/X11/xorg.conf.d"
[ 47.373] (==) ServerLayout "Layout0"
[ 47.373] (==) No screen section available. Using defaults.
[ 47.373] (
) |–>Screen "Default Screen Section" (0)
[ 47.373] () | |–>Monitor ""
[ 47.373] (==) No device specified for screen "Default Screen Section".
Using the first device section listed.
[ 47.373] (
) | |–>Device "Device1"
[ 47.373] (==) No monitor specified for screen "Default Screen Section".
Using a default monitor configuration.
[ 47.373] () Option "AutoAddDevices" "false"
[ 47.373] (
) Not automatically adding devices
[ 47.373] (==) Automatically enabling devices
[ 47.373] (WW) The directory "/usr/share/fonts/X11/cyrillic" does not exist.
[ 47.373] Entry deleted from font path.
[ 47.373] (WW) The directory "/usr/share/fonts/X11/100dpi/" does not exist.
[ 47.373] Entry deleted from font path.
[ 47.373] (WW) The directory "/usr/share/fonts/X11/75dpi/" does not exist.
[ 47.373] Entry deleted from font path.
[ 47.373] (WW) The directory "/usr/share/fonts/X11/100dpi" does not exist.
[ 47.373] Entry deleted from font path.
[ 47.373] (WW) The directory "/usr/share/fonts/X11/75dpi" does not exist.
[ 47.373] Entry deleted from font path.
[ 47.373] (WW) The directory "/var/lib/defoma/x-ttcidfont-conf.d/dirs/TrueType" does >not exist.
[ 47.373] Entry deleted from font path.
[ 47.373] (==) FontPath set to:
/usr/share/fonts/X11/misc,
/usr/share/fonts/X11/Type1,
built-ins
[ 47.373] (++) ModulePath set to "/usr/lib/nvidia-current/xorg,/usr/lib/xorg/modules"
[ 47.373] (==) |–>Input Device ""
[ 47.373] (==) |–>Input Device ""
[ 47.373] (==) The core pointer device wasn't specified explicitly in the layout.
Using the default mouse configuration.
[ 47.373] (==) The core keyboard device wasn't specified explicitly in the layout.
Using the default keyboard configuration.
[ 47.373] (II) Loader magic: 0x7f6a17e02b00
[ 47.373] (II) Module ABI versions:
[ 47.373] X.Org ANSI C Emulation: 0.4
[ 47.373] X.Org Video Driver: 11.0
[ 47.373] X.Org XInput driver : 16.0
[ 47.373] X.Org Server Extension : 6.0
[ 47.374] (–) PCI:*(0:1:0:0) 10de:0fd4:1558:7102 rev 161, Mem @ 0xf6000000/16777216,
0xe0000000/268435456, 0xf0000000/33554432, I/O @ 0x0000e000/128, BIOS @ >0x????????/524288
[ 47.374] (II) Open ACPI successful (/var/run/acpid.socket)
[ 47.374] (II) LoadModule: "extmod"
[ 47.374] (II) Loading /usr/lib/xorg/modules/extensions/libextmod.so
[ 47.374] (II) Module extmod: vendor="X.Org Foundation"
[ 47.374] compiled for 1.11.3, module version = 1.0.0
[ 47.374] Module class: X.Org Server Extension
[ 47.374] ABI class: X.Org Server Extension, version 6.0
[ 47.374] (II) Loading extension MIT-SCREEN-SAVER
[ 47.374] (II) Loading extension XFree86-VidModeExtension
[ 47.374] (II) Loading extension XFree86-DGA
[ 47.374] (II) Loading extension DPMS
[ 47.374] (II) Loading extension XVideo
[ 47.374] (II) Loading extension XVideo-MotionCompensation
[ 47.374] (II) Loading extension X-Resource
[ 47.374] (II) LoadModule: "dbe"
[ 47.374] (II) Loading /usr/lib/xorg/modules/extensions/libdbe.so
[ 47.374] (II) Module dbe: vendor="X.Org Foundation"
[ 47.374] compiled for 1.11.3, module version = 1.0.0
[ 47.374] Module class: X.Org Server Extension
[ 47.374] ABI class: X.Org Server Extension, version 6.0
[ 47.374] (II) Loading extension DOUBLE-BUFFER
[ 47.374] (II) LoadModule: "glx"
[ 47.374] (II) Loading /usr/lib/nvidia-current/xorg/libglx.so
[ 47.432] (II) Module glx: vendor="NVIDIA Corporation"
[ 47.432] compiled for 4.0.2, module version = 1.0.0
[ 47.432] Module class: X.Org Server Extension
[ 47.432] (II) NVIDIA GLX Module 304.37 Wed Aug 8 20:16:03 PDT 2012
[ 47.432] (II) Loading extension GLX
[ 47.432] (II) LoadModule: "record"
[ 47.432] (II) Loading /usr/lib/xorg/modules/extensions/librecord.so
[ 47.432] (II) Module record: vendor="X.Org Foundation"
[ 47.432] compiled for 1.11.3, module version = 1.13.0
[ 47.432] Module class: X.Org Server Extension
[ 47.432] ABI class: X.Org Server Extension, version 6.0
[ 47.432] (II) Loading extension RECORD
[ 47.432] (II) LoadModule: "dri"
[ 47.432] (II) Loading /usr/lib/xorg/modules/extensions/libdri.so
[ 47.432] (II) Module dri: vendor="X.Org Foundation"
[ 47.432] compiled for 1.11.3, module version = 1.0.0
[ 47.432] ABI class: X.Org Server Extension, version 6.0
[ 47.432] (II) Loading extension XFree86-DRI
[ 47.432] (II) LoadModule: "dri2"
[ 47.432] (II) Loading /usr/lib/xorg/modules/extensions/libdri2.so
[ 47.432] (II) Module dri2: vendor="X.Org Foundation"
[ 47.432] compiled for 1.11.3, module version = 1.2.0
[ 47.432] ABI class: X.Org Server Extension, version 6.0
[ 47.433] (II) Loading extension DRI2
[ 47.433] (II) LoadModule: "nvidia"
[ 47.433] (II) Loading /usr/lib/nvidia-current/xorg/nvidia_drv.so
[ 47.438] (II) Module nvidia: vendor="NVIDIA Corporation"
[ 47.438] compiled for 4.0.2, module version = 1.0.0
[ 47.438] Module class: X.Org Video Driver
[ 47.439] (II) LoadModule: "mouse"
[ 47.440] (II) Loading /usr/lib/xorg/modules/input/mouse_drv.so
[ 47.440] (II) Module mouse: vendor="X.Org Foundation"
[ 47.440] compiled for 1.11.3, module version = 1.7.1
[ 47.440] Module class: X.Org XInput Driver
[ 47.440] ABI class: X.Org XInput driver, version 16.0
[ 47.440] (II) LoadModule: "kbd"
[ 47.440] (WW) Warning, couldn't open module kbd
[ 47.440] (II) UnloadModule: "kbd"
[ 47.440] (II) Unloading kbd
[ 47.440] (EE) Failed to load module "kbd" (module does not exist, 0)
[ 47.440] (II) NVIDIA dlloader X Driver 304.37 Wed Aug 8 19:54:47 PDT 2012
[ 47.440] (II) NVIDIA Unified Driver for all Supported NVIDIA GPUs
[ 47.441] (–) using VT number 7

[ 47.441] (II) Loading sub module "fb"
[ 47.441] (II) LoadModule: "fb"
[ 47.441] (II) Loading /usr/lib/xorg/modules/libfb.so
[ 47.441] (II) Module fb: vendor="X.Org Foundation"
[ 47.441] compiled for 1.11.3, module version = 1.0.0
[ 47.441] ABI class: X.Org ANSI C Emulation, version 0.4
[ 47.441] (II) Loading sub module "wfb"
[ 47.441] (II) LoadModule: "wfb"
[ 47.442] (II) Loading /usr/lib/xorg/modules/libwfb.so
[ 47.443] (II) Module wfb: vendor="X.Org Foundation"
[ 47.443] compiled for 1.11.3, module version = 1.0.0
[ 47.443] ABI class: X.Org ANSI C Emulation, version 0.4
[ 47.443] (II) Loading sub module "ramdac"
[ 47.443] (II) LoadModule: "ramdac"
[ 47.443] (II) Module "ramdac" already built-in
[ 47.444] (II) Loading /usr/lib/nvidia-current/xorg/nvidia_drv.so
[ 47.444] (II) Loading /usr/lib/xorg/modules/libwfb.so
[ 47.444] (II) Loading /usr/lib/xorg/modules/libfb.so
[ 47.444] (II) NVIDIA(0): Creating default Display subsection in Screen section
"Default Screen Section" for depth/fbbpp 24/32
[ 47.444] (==) NVIDIA(0): Depth 24, (==) framebuffer bpp 32
[ 47.444] (==) NVIDIA(0): RGB weight 888
[ 47.444] (==) NVIDIA(0): Default visual is TrueColor
[ 47.444] (==) NVIDIA(0): Using gamma correction (1.0, 1.0, 1.0)
[ 47.444] () NVIDIA(0): Option "NoLogo" "true"
[ 47.444] (
) NVIDIA(0): Option "UseEDID" "false"
[ 47.444] () NVIDIA(0): Option "ConnectedMonitor" "DFP"
[ 47.444] (
) NVIDIA(0): Enabling 2D acceleration
[ 47.444] () NVIDIA(0): ConnectedMonitor string: "DFP"
[ 47.444] (
) NVIDIA(0): Ignoring EDIDs
[ 48.321] (II) NVIDIA(0): NVIDIA GPU GeForce GTX 660M (GK107) at PCI:1:0:0 (GPU-0)
[ 48.321] (–) NVIDIA(0): Memory: 1048576 kBytes
[ 48.321] (–) NVIDIA(0): VideoBIOS: 80.07.22.00.07

[ 48.321] (II) NVIDIA(0): Detected PCI Express Link width: 16X
[ 48.321] (–) NVIDIA(0): Interlaced video modes are supported on this GPU
[ 48.324] (–) NVIDIA(0): Valid display device(s) on GeForce GTX 660M at PCI:1:0:0
[ 48.324] (–) NVIDIA(0): CRT-0
[ 48.324] (–) NVIDIA(0): CRT-0: 400.0 MHz maximum pixel clock
[ 48.324] (EE) NVIDIA(0): Failed to assign any connected display devices to X screen 0
[ 48.326] (EE) NVIDIA(0): Failing initialization of X screen 0
[ 48.345] (II) UnloadModule: "nvidia"
[ 48.345] (II) Unloading nvidia
[ 48.345] (II) UnloadModule: "wfb"
[ 48.345] (II) Unloading wfb
[ 48.345] (II) UnloadModule: "fb"
[ 48.345] (II) Unloading fb
[ 48.345] (EE) Screen(s) found, but none have a usable configuration.
[ 48.345]
Fatal server error:
[ 48.345] no screens found
[ 48.345]
Please consult the The X.Org Foundation support
at http://wiki.x.org
for help.
[ 48.345] Please also check the log file at "/var/log/Xorg.8.log" for additional >
information.
[ 48.345]
[ 48.345] ddxSigGiveUp: Closing log
[ 48.345] Server terminated with error (1). Closing log file.

Best Answer

The Nvidia GTX 660M video card requires at least version 302.17 of the proprietary nvidia driver. You can get a newer driver by adding the ubuntu-x-swat/x-updates PPA and upgrading your nvidia driver:

sudo apt-add-repository ppa:ubuntu-x-swat/x-updates
sudo apt-get update
sudo apt-get upgrade

Edit /etc/bumblebee/bumblebee.conf and change Driver= to Driver=nvidia. If the command modinfo nvidia-current says that no module can be found, then change KernelDriver=nvidia-current to KernelDriver=nvidia. After changing the configuration, either reboot or restart the Bumblebee daemon:

sudo restart bumblebeed

Note: not making the configuration changes so may cause optirun to show the below error message:

[ERROR]Cannot access secondary GPU - error: Could not load GPU driver
[ERROR]Aborting because fallback start is disabled."

Good luck!

Related Question