nV News Forums

 
 

nV News Forums (http://www.nvnews.net/vbulletin/index.php)
-   NVIDIA Linux (http://www.nvnews.net/vbulletin/forumdisplay.php?f=14)
-   -   Optimus on Linux - Solved... (http://www.nvnews.net/vbulletin/showthread.php?t=162171)

MrMEEE 05-03-11 01:13 PM

Optimus on Linux - Solved...
 
Hi all..

Look at this.. I have been working on this a few days, and now I think I have a result:

http://www.martin-juhl.dk/2011/05/op...roblem-solved/

Follow me on Twitter

Gusar 05-03-11 01:20 PM

Re: Optimus on Linux - Solved...
 
That is one crazy idea!! But awesome!

You'll be getting a lot of kudos from a lot of people for this.

gradinaruvasile 05-03-11 02:45 PM

Re: Optimus on Linux - Solved...
 
What is

"WITHOUT the optimus mux…"
?

MrMEEE 05-03-11 02:49 PM

Re: Optimus on Linux - Solved...
 
Quote:

Originally Posted by gradinaruvasile (Post 2427708)
What is

"WITHOUT the optimus mux…"
?

Some Optimus enabled laptops has a MUX (multiplexer).. these laptops can both work the optimus way.. but also in the more primative way, where you switch from one card to another..

The laptops that hasn't got a MUX have not (until now) been usable with Linux, with anything other than the Intel card..

Hope that clears things a bit...

elLolo 05-03-11 08:21 PM

Re: Optimus on Linux - Solved...
 
Quote:

Originally Posted by MrMEEE (Post 2427651)
Look at this.. I have been working on this a few days, and now I think I have a result:

http://www.martin-juhl.dk/2011/05/op...roblem-solved/

I didn't try it yet but according to the tutorial your solution seems to be based on this part of VirtualGL user's guide:
Quote:

5.2 Using VirtualGL with Multiple Graphics Cards

VirtualGL can redirect the OpenGL commands from a 3D application to any 3D graphics card in the server machine. In order for this to work, however, all of the 3D graphics cards must be attached to different screens on the same X server using Xinerama. They can then be individually addressed by setting VGL_DISPLAY to (or invoking vglrun -d with) :0.0, :0.1, :0.2, etc.
As pointed out by this quote, each program that should be run with an Nvidia card has be launched with 'vglrun'.

This idea is also interesting since it allows to run the Intel card for all other programs. However I'm wondering what happens with Nvidia's libraries like Nvidia Cg and Nvidia CUDA. Are these technologies supported?

twyoda 05-04-11 12:42 AM

Re: Optimus on Linux - Solved...
 
Does this solution solve the blank screen problem ?
My situation here is that I can let nVidia driver work, but the Xorg.0.log tell me that no display device connected, therefore I got a blank screen. By that status, I can press Ctrl+Alt+F1 to switch to text console. I think my laptop( Asus A52j ) is the one that AaronP called "Hard wired to the Intel graphic card" laptop.
So the solution can solve my problem ?

rockob 05-04-11 03:23 AM

Re: Optimus on Linux - Solved...
 
This is an excellent idea. I have a slightly different issue, though, which I think this solution won't help: the laptop I want to use has the nvidia card driving the HDMI display and the Intel card driving the laptop display. As I understand it, this solution uses the intel driver but intercepts 3d render commands and sends them to the nvidia card, then captures the nvidia's pbuffer output and eventually sends it to the intel card for display. But the intel card can't see the HDMI display so it can't send output to it. Is that right?

Did nvidia ever explain why they don't simply modify their driver to send the pbuffer output to the intel card for display? Sure, they'd have to incorporate a small portion of the code that drives the intel GPU so as to detect the display and send output to it, but how hard could that be given that it's open source?

Gusar 05-04-11 03:33 AM

Re: Optimus on Linux - Solved...
 
Quote:

Originally Posted by rockob (Post 2427950)
Did nvidia ever explain why they don't simply modify their driver to send the pbuffer output to the intel card for display? Sure, they'd have to incorporate a small portion of the code that drives the intel GPU so as to detect the display and send output to it, but how hard could that be given that it's open source?

It's actually hard because the intel driver is open source. Can't have a closed driver interface with an open one.

rockob 05-04-11 03:53 AM

Re: Optimus on Linux - Solved...
 
Quote:

Originally Posted by Gusar (Post 2427951)
It's actually hard because the intel driver is open source. Can't have a closed driver interface with an open one.

But that's easily solved - if necessary, you release the open-source driver separately from the closed-source driver and make the closed source driver look for and use the open source one.

MrMEEE 05-04-11 05:20 AM

Re: Optimus on Linux - Solved...
 
Hi rockob and twyoda..

My solution should work on your laptops as well...

twyoda.. first check that your BusID's for the intel and nvidia card are right:

falcon martin # lspci |grep VGA
00:02.0 VGA compatible controller: Intel Corporation Core Processor Integrated Graphics Controller (rev 02)
01:00.0 VGA compatible controller: nVidia Corporation GT215 [GeForce GT 335M] (rev a2)

falcon martin # cat /etc/X11/xorg.conf |grep BusID
BusID "PCI:1:0:0"
BusID "PCI:0:2:0"


If that is ok... try to change this in the top of the xorg.conf:

Screen "Screen0"
Screen "Screen1" Relative "Screen0" 0 0

to

Screen "Screen1"
Screen "Screen0" Relative "Screen1" 0 0

MrMEEE 05-04-11 05:22 AM

Re: Optimus on Linux - Solved...
 
Quote:

Originally Posted by elLolo (Post 2427871)
I didn't try it yet but according to the tutorial your solution seems to be based on this part of VirtualGL user's guide:


As pointed out by this quote, each program that should be run with an Nvidia card has be launched with 'vglrun'.

This idea is also interesting since it allows to run the Intel card for all other programs. However I'm wondering what happens with Nvidia's libraries like Nvidia Cg and Nvidia CUDA. Are these technologies supported?

Right now the acceleration of the Intel card doesn't work.. and Nvidia Vdpau doesn't seem to be working.. CUDA should be working...

rockob 05-04-11 08:54 PM

Re: Optimus on Linux - Solved...
 
We tried your tutorial on an XPS 15 L502x, and there was 2D output on the laptop screen but no output on the HDMI screen. "lsmod|grep nvidia" showed it was loaded.

Isn't the lack of HDMI output to be expected though since the HDMI is attached to the nvidia card but X is sending all its display output via the intel iGPU?

Lol, we asked Dell about the HDMI and they said it was supported and pointed us at the Linux nvidia drivers. When we told them that we'd tried them and they didn't work, Dell pointed us to an nvidia FAQ page where we typed 'linux optimus' into the search box and immediately got the official reply that it isn't supported and won't be. Dell didn't even bother to try out the link! Then when we rang Dell up we had to explain what a graphics card was to their 'technical specialist'.


All times are GMT -5. The time now is 07:27 PM.

Powered by vBulletin® Version 3.7.1
Copyright ©2000 - 2014, Jelsoft Enterprises Ltd.
Copyright ©1998 - 2014, nV News.