View previous topic :: View next topic |
Author |
Message |
jyoung Guru
Joined: 20 Mar 2007 Posts: 436
|
Posted: Wed Apr 27, 2016 3:33 pm Post subject: X won't start on the Secondary GPU |
|
|
Hi Folks,
My machine has a hybrid graphics card comprised of a GeForce 9400M G and a GeForce 9200M GS. I'm currently running X on the more powerful 9400M G and using the 9200M GS for some CUDA code that I'm working on. I'd like to switch the two - use the less powerful 9200M GS for X and the more powerful 9400M G for CUDA. I found a really good explanation of how to do this on stackoverflow:
http://stackoverflow.com/questions/18382271/how-can-i-modify-xorg-conf-file-to-force-x-server-to-run-on-a-specific-gpu-i-a
Basically, they suggest changing the device section in xorg.conf to point to the card we'd like X to use. My 9400M G is at PCI:3:0:0 and my 9200 is at PCI:2:0:0, but when I make these changes to my xorg.conf file, X doesn't start properly. The screen flashes as if X is about to start, there's a flurry of hard drive activity, and then it goes dark. Upon reboot the /var/log/Xorg.0.log doesn't seem to record any fatal errors, although there are many references to a CRT-0 monitor which doesn't exist. lspci reports that both cards are detected - and, perhaps more importantly, I know that both cards work since I'm currently using one for X and the other for CUDA.
Does anyhow have any ideas?
The Xorg.0.log file is here:
http://pastebin.ca/3584583
and the broken xorg.conf file is here:
http://pastebin.ca/3584585
This xorg.conf file is identical to a working xorg.conf generated by nvidia-settings, with the modification that I've switched from device0 to device1. |
|
Back to top |
|
|
NeddySeagoon Administrator
Joined: 05 Jul 2003 Posts: 54220 Location: 56N 3W
|
Posted: Wed Apr 27, 2016 6:11 pm Post subject: |
|
|
jyoung,
This is how Xorg put together your X server.
Code: | [ 889.841] (==) Using config file: "/etc/X11/xorg.conf"
[ 889.841] (==) Using config directory: "/etc/X11/xorg.conf.d"
[ 889.841] (==) Using system config directory "/usr/share/X11/xorg.conf.d"
[ 889.841] (==) No Layout section. Using the first Screen section.
[ 889.841] (==) No screen section available. Using defaults.
[ 889.841] (**) |-->Screen "Default Screen Section" (0)
[ 889.841] (**) | |-->Monitor "<default monitor>"
[ 889.841] (==) No device specified for screen "Default Screen Section".
Using the first device section listed.
[ 889.841] (**) | |-->Device "Device0"
[ 889.841] (==) No monitor specified for screen "Default Screen Section".
Using a default monitor configuration. |
The config you posted says
Code: | Section "ServerLayout"
Identifier "Layout0"
Screen 0 "Screen0" 0 0
...
Section "Screen"
Identifier "Screen0"
Device "Device1"
Monitor "Monitor0" |
Which tells that the log you posted was not generated from the xorg.conf you posted. _________________ Regards,
NeddySeagoon
Computer users fall into two groups:-
those that do backups
those that have never had a hard drive fail. |
|
Back to top |
|
|
jyoung Guru
Joined: 20 Mar 2007 Posts: 436
|
Posted: Thu Apr 28, 2016 2:14 am Post subject: |
|
|
Sorry, I've been messing around with xorg.conf a lot! Here's the Xorg.0.log that was generated by the xorg.conf file mentioned above:
http://pastebin.ca/3584927 |
|
Back to top |
|
|
jyoung Guru
Joined: 20 Mar 2007 Posts: 436
|
Posted: Fri Apr 29, 2016 5:15 pm Post subject: |
|
|
The log file I posted earlier was the result of an experiment where I tried stripping away as many parts of the xorg.conf file as possible and seeing if X could figure it out from defaults. This seemed like a reasonable idea since my X server is extremely good at figuring out the defaults for the 9400M G card. In fact, in playing around with it, I've found that it's possible to remove nearly all of the xorg.conf file without breaking it.
Of course this didn't work -- it fails when I add the critical line to the Device Section that directs X to use the 9200M GS card:
BusID "PCI:2:0:0" |
|
Back to top |
|
|
|