I plan to buy a new laptop sometime and I have been doing a lot of research trying to find the best one. Unfortunately a lot laptops include Optimus and it has very little Linux support. I have a laptop in mind that seems nice to me, but unfortunately it has Optimus. I am stuck in an unfortunate spot. I could spend more money on a laptop with a more expensive GTX670 or GTX675 graphics card, and because these cards do not appear to have Optimus I might have a better time using them with Ubuntu in the first place as well as not have to take a performance hit. The thing is, I do not particularly need such a high end graphics card. A GTX650M or GTX660M will suit my needs, if it gets a frame rate comparable to what it would on Windows, or a slight penalty. I also prefer the laptops with these weaker cards because they tend to be a pound or two lighter and they have vents on the side instead of the side and back or only back.

So that is the back story. My question is, how many FPS hit can I expect to take as compared to Windows 7 performance if I use Bumblebee to get Optimus support? Also, how many FPS hit can I expect to take from Wine? I have used Wine before but never in a situation where I am cutting it so close on the FPS I need versus the FPS I expect to get with the graphics card I want. Even if I use a GTX650 on Windows I will be cutting it close, with only a few FPS to spare while being able to maintain the graphics settings I would prefer. So if the hit is only a few FPS it will be fine, and if it is a few more a GTX660m will probably be okay. But if it is a huge difference, I might be forced to shell out more bucks for a laptop that I like less just to be able to avoid Optimus !! Some feature.

One more thing. Will Bumblebee work on any Optimus laptop, even if it is Ivy Bridge? I would hate to spend over a thousand dollars on a laptop and find that I can not use Ubuntu with it.


The performance hit is much worse with Bumblebee. Bumblebee uses VirtualGL as bridge between the rendering on the Nvidia card and outputting on the Intel display. VirtualGL was made as a more general purpose program for splitting 3D rendering from displaying. It works, but the performance is not as good as a native solution.

Consider Eric Appleman's results on https://github.com/Bumblebee-Project/Bumblebee/issues/37#issuecomment-4062386. I also did a test on a GT 425M (Fermi) and that also showed a 10 times worse frame rate using glxspheres. The first command below used Bumblebee/VirtualGL, the second renders the program "natively" on the Nvidia card (although the program is not visible because there is no external monitor attached).

$ optirun glxspheres
Polygons in scene: 62464
Visual ID of window: 0x21
Context is Direct
OpenGL Renderer: GeForce GT 425M/PCIe/SSE2
72.460542 frames/sec - 75.205347 Mpixels/sec
74.386601 frames/sec - 77.204366 Mpixels/sec
75.740174 frames/sec - 78.609212 Mpixels/sec
74.906713 frames/sec - 77.744179 Mpixels/sec
75.722470 frames/sec - 78.590838 Mpixels/sec
75.897246 frames/sec - 78.772233 Mpixels/sec
76.254962 frames/sec - 79.143500 Mpixels/sec
76.083521 frames/sec - 78.965565 Mpixels/sec
$ DISPLAY=:8 glxspheres
Polygons in scene: 62464
Visual ID of window: 0x27
Context is Indirect
OpenGL Renderer: GeForce GT 425M/PCIe/SSE2
734.081618 frames/sec - 819.235085 Mpixels/sec
728.918580 frames/sec - 813.473136 Mpixels/sec
730.108078 frames/sec - 814.800615 Mpixels/sec
730.416062 frames/sec - 815.144325 Mpixels/sec
730.235888 frames/sec - 814.943251 Mpixels/sec
730.164017 frames/sec - 814.863043 Mpixels/sec

If you do not mind buying an external monitor and leaving the laptop screen black, you can take full advantage of the Nvidia card even if it is an Optimus laptop. The alternative is looking for Lenovo laptops, these have a BIOS option for choosing between the integrated and discrete card or Optimus mode. Other vendors can learn a lot from Lenovo in regard to that...

PRIME is the real solution to the Optimus issue (Bumblebee is more a workaround/hack), but it is likely not adopted soon by Nvidia due to licensing issues.

Ivy Bridge is unrelated to Bumblebee, whether that gives issues has more to do with driver support from Intel.

  • so if I use an external monitor I will not take a performance hit while using it if I leave the laptop screen black? So I can use the integrated video card with the laptop screen on, and then when I want to do things that require high FPS I can plug into an external monitor and get full performance as long as the laptop monitor is not on?
    – Robb A.
    Jul 13 '12 at 12:55
  • 1
    Would you mind sharing a link with me that explains how I can configure this? I don't quite understand how it works, wouldn't the image from the gtx card still need to pass through the integrated GPU anyway? How does turning the laptop screen off help. Thanks for your answer! Using an external monitor sounds like a good enough solution , as long as I can quickly switch back to using the integrated card on the laptop when I am done needing the gtx card.
    – Robb A.
    Jul 13 '12 at 13:26
  • You don't actually "turn the laptop screen off", it is a side-effect of configuring the system to use the nvidia card. If an external monitor connector (say, HDMI) is wired to the Nvidia chip, it does not have to pass the Intel GPU at all. I have started writing something about using an external monitor, it can be found on wiki.bumblebee-project.org/Multi-monitor-setup
    – Lekensteyn
    Jul 13 '12 at 16:32

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.