NVIDIA has no plans for Optimus support in their binary blob drivers for Linux:
Source: http://www.nvnews.net/vbulletin/showthread.php?p=2183477#post2183477
There are architectural problems with the X.org server implementing Optimus:
Source: http://www.mail-archive.com/[email protected]/msg00007.html
That isn't to say new Optimus machines won't run Linux at all, just that they will probably only be able to use integrated graphics, since the actual video output is handled with a single multiplexer on the Intel IGP (previous switchable graphics implementations used a switch to select the mux).
Further reading: http://www.notebookcheck.net/Nvidia-Optimus-Review.25467.0.html#c379533
Nouveau may someday support Optimus, but as of yet there has been no discussion on their mailing list so this is mere speculation. There is no mention of any change that would allow X.org to support Optimus in the upcoming 1.9 release.
-
ALLurGroceries Vegan Vermin Super Moderator
-
Ugh.Facepalm. Here I was hoping at best we'd be able to get it "stuck" in discrete graphics mode, similar to how older switchable graphics worked. I had a bad feeling about Optimus, knowing that there had to be a software component to the switching, as opposed to the older days when you flipped a physical switch.
If Nvidia is pushing adoption of Optimus, they should at very least write their binary blob in such a way to favor the discrete graphics alone. This "amazing new technology" ensures that your high powered discrete card in a brand new notebook is simply junk, if you don't run Windows? I hope that's not the case. -
ALLurGroceries Vegan Vermin Super Moderator
Yeah not very inspiring, the mux problem (no physical switch or BIOS interface like previous implementations) and NVIDIA's lack of support pretty much sum it up.
Here are a couple of posts on Ubuntu forums:
http://ubuntuforums.org/showthread.php?t=1420377
http://ubuntuforums.org/showthread.php?t=1418935
NVIDIA's Optimus whitepaper (pages 14-19 in specific):
http://www.nvidia.com/object/Lptimus_whitepapers.html
-
It sure look you know a lot more about this than me.
Just wanted to note that someone over at Anandtech installed Ubuntu 9.04 on an Optimus laptop upon my and other readers' request. Apparently installation was flawless. However, Ubuntu only used the IGP and not the dedicated GPU. -
I think its important that every Linux user petitions NVidia as best as possible to include proprietary support for Optimus, even if it is "just" supporting the discrete graphics card like it was the only one installed. Optimus is, as far as notebooks are concerned, Nvidia's big push. They're just renaming and rebranding the cards themselves; not making any great strides in performance or technical aspects, so this is their "baby". Since so many people focus on battery life, OEMs find Optimus enticing and its showing up in just about every major laptop that isn't made for "gaming", these days. All these notebooks are going to be nigh useless for Linux users.
It will be very, very interesting to see what the next MacBook Pros use for graphics. If they use Optimus based Nvidia cards, that means that they SHOULD be able to create workable Linux support. If they use discrete only Nvidia, that will be interesting. Apple folks have gotten used to switchable graphics after all. Then again, (this is likely my preference) they could always go back to the ATI cards that the Pro models of old used instead!
NVidia had a commanding lead in Linux support 5 years ago, but they've been slipping big time, while ATI has been working hard to make up for their deficiencies. I'd much rather buy a laptop that runs on a powerful ATI 58xx/57xx and have the option of the "ati" open source driver and Catalyst, even if it takes a little more work to get up and running perfectly, than buy Nvidia and be left with a useless husk of Optimus. -
ALLurGroceries Vegan Vermin Super Moderator
Dug up some more stuff, looks like there is some work in the right direction where X.org is concerned, but this is using an ATI card, which is completely different. However the same person is talking in an IRC log about Optimus.
http://airlied.livejournal.com/71734.html via http://wiki.x.org/wiki/SummerOfCodeIdeas#line-132
IRC log: http://people.freedesktop.org/~cbrill/dri-log//dri-devel-2010-03-07.log
Here's a small group of people signing up to volunteer for debugging: https://launchpad.net/~hybrid-graphics-linux and http://www.doodle.com/63fyczzrxqaquhqx
There is a Phoronix article with a forum thread but there is nothing of worth there, and the forum thread has nothing noteworthy.
That's all I have dug up for now. I've searched Ubuntu/Arch/OpenSuSE/Debian forums with nothing good turning up, but if you are interested in this please do post any links that I haven't already posted if they contain useful info.
Edit: There's an article on Ars about graphics switching in the new MBPs released today (4/13/2010): http://arstechnica.com/apple/news/2010/04/inside-apples-automatic-gpu-switching.ars
Edit 2: reg hw is reporting that the new MBPs have multiplexers, so that would mean it's NOT like Optimus but more like the older (2nd-generation) software switchable graphics. See: http://www.reghardware.co.uk/2010/04/14/apple_gpu_switching_macbook/ -
lotsa great information in this thread! +rep
-
ALLurGroceries Vegan Vermin Super Moderator
Was just browsing nvnews for an unrelated reason and saw this:
-
User Retired 2 Notebook Nobel Laureate NBR Reviewer
Optimus uses WIn7 apis to clone the data across to the IGP. For them to do the same under Linux would be a stack of work for likely a much smaller customer base. I think commercially it wouldn't make sense for them.
Meaning users who want need accelerated graphics under Linux consider a system with discrete, hybrid (switchable) graphics OR use a DIY ViDock. -
ALLurGroceries Vegan Vermin Super Moderator
I'm assuming you didn't bother reading the thread.
There are a lot of very unhappy ASUS UL series owners who prefer to run Linux. Optimus is becoming more and more common, for them to not support it ever will be a mistake, since it will cause ill will towards the brand. Otherwise their Linux support is decent. Here's to hoping for a pointy-haired revelation. -
This makes buying a laptop more difficult again. This I think also shows the dangers of what can happen when the drivers aren't open source.
-
As a Linux user, it's always best to do your research before purchasing hardware, particularly when it comes to graphics. Bottom line, if you're a Linux user, don't get Optimus hardware... -
Do you have any references to this "bad news" of the linux desktop becoming less popular? I don't wish to shoot the messenger, but if I was being cynical I'd say such a statement was FUD.
I suppose if nVidia continues on what appears to be its current policy, the laptop desktop would become less popular and would actually be caused by nVidia - a sort of self-fulfilling prophesy. -
and the point is, it is hard to write fully-featured graphics drivers without help from the manufacturer (notice how fast the FOSS Radeon 5xxx are progressing only now that AMD is helping?) so, once again, imo the reasonable thing to do as a Linux users is to stay away from Optimus laptops. -
ALLurGroceries Vegan Vermin Super Moderator
Yeah d00dz the point of this thread is to consolidate useful info about Optimus on Linux. Please refrain from posting unless you have new info with sources. Cheers
-
jasperjones, thank you. I come onto NBR in my leisure time, and I don't normally look for statistic about linux desktop usage. It was you that brought it up, presumably as some sort of explanation as to why nVidia are not supporting Optimus?? As you didn't give a source for the data or any context, it was very hard to do my own research.
Based on the following two sources Usage share of operating systems - Wikipedia, the free encyclopedia and Market share for browsers, operating systems and search engines, I still don't have sufficient information to conclude that linux browsers are less popular. Assuming that 100% has to be shared out between the different browser platforms, if a new platform such as mobile/cellular enters the market (e.g. Android, iPhones, etc), then the established browsers would have to share the pie chart with the new entrant. So the number using a linux based browser could be just as numerousas before, it is just that we are now competing statistically with all those mobile browsing opportunities that didn't exist before (i.e. on the commute to work, at lunch time in the park, etc).
-
timberwolf,
I agree with some of your concerns and would like to discuss this further. However, ALLurGroceries's request to keep this thread on-topic is to be respected. Later tonite when I'm free, I'll PM a mod to check if we can move the "Linux on the desktop" part of this discussion to another thread. -
Optimus on Windows 7 relies on its capabilities to utilize more than one GPU at a time. ( Managing Resources for Multiple GPU Scenarios - MSDN) This is one of the reasons it only works on Windows 7 and not Vista or XP.
As Nando has stated Optimus on Win7 utilizes Microsofts Detours API and a set of wrappers. So essentially much of how and why Optimus works is built into Windows 7.
To quote Mr. Airlie "Optimus is a whole different story, I assume it'll still have a _DSM method to turn on/off the GPU, but there is no output mux to switch, so there is no way without a major rearchitecture of the X.org and DRI stacks we can support optimus anytime soon."
The _DSM method he is referring to is how Hybrid Graphics, Nvidia Switchable Graphics 2nd Generation, controls switching. ("DSM is an optional ACPI control method that enables devices to provide device-specific control functions.") Optimus is 3rd generation switchable graphics and eliminates the multiplexers and direct outputs to the display. Optimus is almost entirely a software based tech (beyond the Optimus Copy Engine built into compatible GPUs) which is why it would take a "rearchitecture of the X.org and DRI stacks" to function and why it most likely will not happen. Hybrid Graphics on the other hand is extremely close to working. -
howz CUDA on optimus ?
Are apps able to detect dGPU for CUDA ? -
On Linux, it doesn't work with Optimus -
jeremyshaw,
Good to know that the windows driver is cuda aware.
iGPU + dGPU actually opens up a load of ideas that can be worked upon.
I wonder what it would be to harness both iGPU & dGPU cycles at the same time. -
I dunno if the Intel GMA (HD; 4500MHD) is even compatible with any GPGPU API...
Much less if Optimus allows access to the Intel GPU (since Optimus needs some of the IGP processing pipeline) when the nVidia GPU is active. The Optimus whitepaper, unfortuneately, doesn't say anything about that. -
ALLurGroceries Vegan Vermin Super Moderator
There's been some progress on the reverse engineering front: airlied: some info on intel/nvidia switchable via [Phoronix] Some Small Progress On Linux GPU Laptop Switching
-
User Retired 2 Notebook Nobel Laureate NBR Reviewer
The NVidia chip is the processor and the IGP is the renderer. Linux would need the xserver written to be able to function that way. -
ALLurGroceries Vegan Vermin Super Moderator
Yep to be clear this is for soft-switchable nvidia, (the generation before optimus), previously they had ATI working as far as I remember.
-
Hey guys. This has become something of an obsession with me, I think it's unconscionable that linux is treated in this way and want to at least shine a bright, unforgiving light on the matter.
OK. We know there are currently no Fermi mobile GPU drivers for Optimus under Linux, the question is, what are we going to do about it? All I can do as a consumer is shy away from an Optimus laptops like they were plague victims, but that doesn't mean I'm not interested in the truth. And while melodrama is fun, we won't get far if all their developing engineers turn up murdered, so while your RAGE might envision them all found dead, let's skip that (for now).
All the info end users need (for now) comes from the Linux x64 Display Driver README:
Note that the list of supported GPU products is provided to indicate which GPUs are supported by a particular driver version. Some designs incorporating supported GPUs may not be compatible with the NVIDIA Linux driver: in particular, notebook and all-in-one desktop designs with switchable (hybrid) or Optimus graphics will not work if means to disable the integrated graphics in hardware are not available. Hardware designs will vary from manufacturer to manufacturer, so please consult with a system's manufacturer to determine whether that particular system is compatible.
Shouldn't this information be easy for anyone with these laptops to verify?
I like the idea of all the "Owner's Corner" threads here at NBR, but really what it comes down to in 90% of the cases its a bunch of post-purchasers trying to justify their choices. "Ooh look what I spent all my savings on, I did good right? right? right?" and while those threads may help each other feel better about their purchasing decisions, we could harvest actual useful data from them. On the whole, people are helpful to one another when it's all about them.
So, what if the user could go into their BIOSes and see? And dump said BIOS on your favorite nVidia BIOS hacking site to see if someone smarter has the ability to enable this if yours doesn't? Or boot up a live linux distro on a Flash drive and fire up CUDA or a 3D modelling program or even a game after installing the binary driver, etc.
What about us, that is, those interested in nVidia linux support for these cards, jump into the various "Owner's Corner" threads and politely ask owners to help in this? Perhaps write it up once, and post a link into the relevant manufacturer threads? Maybe even step-by-step instructions?
We could then tabulate the results obtained and hopefully make it worthy of a sticky. I've been a Phoronix and AnandTech poster many years longer than NBR, but this place has some density of users now, and for once I'd love to see them quoting and cross-linking to threads here for reference.
Thoughts? -
And then there is also the group of OS fanatics who wouldn't help even if they knew how to do it just because they like to be mean against "those open source cobblers".
To sum it up: I like your idea, but I guess you'll just not find the user base because most people wouldn't help, and the ones who would are Linux users themselves and stay away from questionable hardware. -
Hi-ho, hi-ho, to Intel's integrated graphics I go...
Nvidia sucks and Optimus crocked, so I go, hi-ho, hi-ho, hi-ho. -
I agree with the above comment, we should be lobbying (and pressuring) nVIdia to at least support using only the nvidia GPU -- or giving us the option not for the automatic swicthing, but to be able to specify in the xorg.conf file which driver/device to use.
You can submit comments via
Submit Issue
And my "question" is below, as an example. Send something similar, then tell all your mates to. Then tweet it, and make it go viral until nVidia decide to do something!
Phil
I understand that nVidia have no plans to support Optimus on Linux at present. This is irritating, but fair enough.
However, if there is to be no optimus support I (and most of the Linux community it seems) would like at least to be able to choose to have just the nVidia GPU enabled, rather than being forced to use just to use just the intel card. Or better still, the option to specify in our X config which we want, so that when we want to save battery life we can choose the intel card by a little editing of config files.
I would therefore urge you to update your Linux drivers ASAP so that, on optimus systems, one can set the xconfig to use the nvidia GPU, even if it can't use optimus to switch.
-
So if you want optimus support on Linux ask NVIDIA to release the specs for the switch procedure, so that xorg or kernel developers know what they're dealing with. -
What if the system has a BIOS option to switch between cards and enable/disable Optimus, like the ThinkPad T-series does?
-
Optimus doesn't really switch between the graphics cards, it merely en- or disables the NVIDIA GPU.
If Optimus is deactivated all tasks of the graphics output are done by the Intel chip (computation, memory management, writing the display buffer).
If Optimus is activated the Intel chip still is responsible for displaying the information. The NVIDIA GPU only takes over the computation and memory management tasks and then copies the results into the Intel chip memory.
So one can't simply switch off the Intel chip via the BIOS because then there wouldn't be any graphics output at all. I guess one could still switch the NVIDIA chip on and off, but I don't know if the Intel chip has to be told that it should not write to its own memory anymore.
However, this switching on and off of the NVIDIA chip is the problem. The information on how to do that is not publicly available and therefore hard to accomplish for anyone who doesn't pay NVIDIA for the licenses. And it is not something that can be done by the graphics driver alone, therefore one can't simply install the prprietary NVIDIA driver to make it work. -
Like having a shell script do something like this...
Code:#! /bin/bash if [ "$(lspci|grep -o -m 1 NVIDIA)" == "NVIDIA" ]; then # load NVIDIA modules else # load intel modules fi
EDIT: Yeah, that is what I meant. You can go into the BIOS and turn off the NVIDIA card. -
-
Hmm, I see. Well, I'll just stick with Intel integrated graphics then. Heck, with Sandy Bridge coming out, most FOSS games (and Compiz) will run at the best settings flawlessly.
NVIDIA, with their binary blob, used to be the premier GPU to use with Linux. Now, I am going to stay far away from them (on the notebook side; I don't use desktops...). -
So I guess there will be coming some dark times for Linuxers who want powerful graphics. -
With the Sandy Bridge IGP, we won't need NVIDIA or ATI unless you care about running proprietary games via WINE. Almost all FOSS games will run perfect on the SB IGP.
-
ALLurGroceries Vegan Vermin Super Moderator
@Vendetta4Reason what you're asking really applies to older generation switchable graphics, Optimus is a different beast. For first generation switchable we had a script that you can see in the detectgpu script in the N10-HOWTO here: http://forum.notebookreview.com/linux-compatibility-software/315810-linux-asus-n10-n10j.html. Somebody took this script and updated it for the AW M11x (with a nice acpi call to disable the GPU too) here: https://wiki.archlinux.org/index.php/Alienware_M11x#.2Fetc.2Frc.d.2Fdetecgtgpu
If you read through this thread you will see that it is much more complicated for Optimus. Some models have a BIOS option to use only Intel graphics, and that does what you'd expect. However as far as I know, no model has ever shipped with the BIOS able to use NVIDIA graphics only, since it is sent through the IGP instead of through its own dedicated multiplexer. -
I came across a HP DV6 that has an ATI/Intel HD hybrid gpu chip. I was wondering whether ATI would be supporting that in Linux. Anyone know?
-
ALLurGroceries Vegan Vermin Super Moderator
ASUSM51Ta & Linux: Enjoy Hybrid Graphics with switcheroo
Linux Hybrid Graphics: Using acpi_call module to switch on/off discrete graphics card in Linux
[ubuntu] ATI Switchable graphics - Ubuntu Forums
Separately, I've found some more Optimus-related NVIDIA posts:
-
Thanks, ALLurGroceries, for some good, detailed info there!
Would you say that an ATI/hybrid would be an easier combo to work with than Nvidia (or about the same)? The guy who wrote the Asus blog sounds like there's a workable solution except it seems to indicate it's with the open source radeon driver. Not sure whether you could use the proprietary catalyst ATI driver in a similar method, probably not?
I figure the BIOS setting change isn't an optimal or acceptable solution although some users might be satisfied with it.
Maybe it's just easier to get an Intel HD gpu laptop for now or take a chance that ATI might improve the 'switching system?' -
ALLurGroceries Vegan Vermin Super Moderator
It does look like it only works for the radeon driver, not fglrx. I've never had a switchable ATI system so I can't say for sure or if there are ways around it.
The ATI hybrid stuff is at least working, NVIDIA optimus doesn't work at all, you're stuck on integrated graphics there. In fairness, ATI's switchable graphics are 2nd generation though, still software switchable as opposed to automatically software switchable. This is a windoze-only consideration however.
ATI actually hasn't done anything to implement this switching, it's been done by a couple of developers who work on the radeon driver, so I can't say if they will improve it or make it work with fglrx. -
Your actually stuck with the dedicated graphics card not the integrated in all the situations I've seen. Nevertheless suckish though.
-
ALLurGroceries Vegan Vermin Super Moderator
Do you mean on ATI without vga_switcheroo? On NVIDIA optimus you are stuck on intel graphics when on Linux. At least this has been the report from everything I've seen -- I don't own one an optimus system.
-
Yeah, that doesn't make sense - that you're stuck with the dedicated if it's an ATI hybrid. It sounds like ATI isn't supporting this switcheroo, either.
I think I know what the other poster is talking about, though. If there's a setting in the BIOS for disabling the other card, then you might be able to choose the dedicated graphics card.
Yeah, it sucks for several reasons. The battery life is worsened instantly as soon as you do that and let's face it, you paid for the feature when you bought the laptop and you can't even use it. Those are the two reasons that come to mind of being the most serious, imho.
I'm looking at Intel-based GPU laptops right now, though. I suspect if ATI even gets around to having some sort of support for an ATI hybrid laptop, it will be only the open source ATI driver and the switch to Intel probably won't be an 'on the fly' switch but if it is, great. Still, using the proprietary driver that then switches to an open source Intel driver? Good luck? -
ALLurGroceries Vegan Vermin Super Moderator
Completely not relevant to the topic, but stay away from intel GMA500 ("poulsbo") graphics, these are only found in ultraportables usually, but the driver is closed source. Intel GMA - Wikipedia, the free encyclopedia
I've seen rumors of optimus systems that still have dedicated multiplexers for each GPU, but I've yet to see anything about an optimus system where the dedicated GPU can be forced on in the BIOS. I'm not sure if this is a misunderstanding of optimus or if they really do exist -- for now I'll stick with the generally accepted idea that you are stuck on Intel graphics with optimus. -
Little bit of a cross post from the Nvidia Forums but relevant for the most part here also.
I suggest reading the Optimus Whitepaper for more info. It is important to note that Optimus is not like the traditional way of doing switchable graphics.
Terms to understand first:
IGP = Intel GPU
Discrete GPU = Nvidia GPU
Multiplexer or MUX = Switch
Here are some selective quotes from it that illustrate what I am talking about: (Note: Quote blocks are all from the Optimus Whitepaper.)
The easiest way to think about it is like this:
Traditional Switchable Graphics:
If you are using Performance Mode: Nvidia GPU -> Digital Switch (multiplexer) that determines which GPU to output to the display -> Notebook LCD
If you are using Power Saving Mode: Intel GPU -> Digital Switch (multiplexer) that determines which GPU to output to the display -> Notebook LCD
The Multiplexer is the switch in switchable graphics. Think of it sort of like a light switch.
Optimus Technology:
If it is using Performance Mode: Nvidia GPU -> Intel GPU -> Notebook LCD
If it is using Power Saving Mode: Intel GPU -> Notebook LCD
The term "switchable graphics" doesn't really apply to Optimus IMHO because there is no real switch (multiplexer) like there is with traditional switchable graphics.
Or as it is put in the whitepaper:
Another way to think of Optimus:
Think of it like older manual (stick shift) and automatic transmission in a car. Traditional switchable graphics is like a manual (stick shift) where you can manually shift to whichever gear you like. Optimus is an automatic transmission and shifts on its own. What people are expecting of Optimus is that it is like a manually controlled automatic transmission, where it automatically shifts for you but you can shift with the paddles if you want. This is not the case, they are different technologies.
I hope all of this helps clear things up for some people.
FIN.
There seems to be some success on the vgaswitcheroo front for nvidia hybrid (switchable) graphics. -
-
ALLurGroceries Vegan Vermin Super Moderator
Nautis said: ↑I have seen the same thing lately. I assume these are the systems that have the button for turning optimus on or off like this one (youtube).Click to expand...
Thanks for the long post summing up the whitepaper -- I'll point people to your post if they are confused. I linked to that whitepaper on the first page of the thread but it seems like there's info overload going on now, since we're starting to go in circles. -
ALLurGroceries, I love your name and avatar.
No support for NVIDIA Optimus on Linux
Discussion in 'Linux Compatibility and Software' started by ALLurGroceries, Apr 6, 2010.