I think this has been posted before but I wanted something specific and I also had some questions to add.
I was thinking about this because I was looking an option of buying two cards, one from ATI and one from Nvidia.
However, I only have one computer to test it on unless I can squeeze my way in and use a relative's computer.
It would be easiest on my own new build, though. So, there would be some needed configuration changes. It is not worth my while or can this be done without a lot of trouble?
I read that it's simple to uninstall drivers or purge drivers so that you can switch from Nvidia to ATI or vice versa.
Is the process relatively the same of ATI <---> Nvidia? In other words, Nvidia to ATI is harder/the same as ATI to Nvidia?
It would probably be done just once unless was something new to test. Also, if I went for an ATI card and was dissatisfied, I might to do the switch.
My current card is old, X300SE and I'm not sure it'll do what I want. I read of some problems with it in Google Earth and I already have a laptop with an ATI card that gave problems.
I have not invested much in video cards ever and I read of some gamers having three or four cards at one time! It's just an idea and first, I would like to know if switching drivers is a big deal or not. It seems one has to a lot to just install ATI (and Nvidia drivers) so is purging/removing the drivers much easier? Is there a process? Is it well-documented?
Sorry, if this is a boring topic but since Nvidia does a lot of messing up code when it's installed, does Xorg get 'repaired' when you purge it? I suppose it does. Same question with ATI (since some installs eventually use scripts/PPA or compiling etc....)
Anyway, thanks for any answers.
It might be easier to have three partitions, one containing your data and the others each containing a separate distro install with the appropriate drivers.
That is also handy for flipping between open source and proprietary drivers for the same HW, or for trying new distro versions.
When you use ubuntu lucid+ switching can be done on the fly, otherwise you have to uninstall. When you only switch from oss driver to binary no uninstall is needed. I would NEVER run nvidia installers on u lucid+, that will break the system, same applies to ati installers.
Do yourself a favor and use radeon driver for AMD hardware and nouveau driver for nvidia hardware. With this combination, switching the driver is as simple as following this procedure;
1) power off and unplug,
2) yank out amd/nvidia card,
3) press in nvidia/amd card,
4) power on and wait to boot.
And that's it... no weird/special procedures.
Unless you have something a little weirder in mind, like having both cards installed in the machine at the same time. I *believe* that you should be able to use kernel arguments and/or xorg.conf to select which device to activate.... or might it be able to figure that out automatically given which connector it finds connected?
I read about claims of it not being too hard on here when I asked practically the same question but it was more or less how to uninstall the drivers. I hope you're not going to ask me to reproduce that thread section.
Thanks for going into detail. I was just curious on what it entails.
What I was particularly wondering about is when the install has a lot of 'additional' modifications or configurations. For e.g., patches or extra scripts in which the install went a bit further beyond the 'How-to' install' one might read on the Nvidia page and ATI/AMD instructional page respectively. I believe there are some methods for uninstalling the drivers, purging everything 'nvidia/ati' that is being utilized (that the user doesn't want used).
Ubuntu seems to try to have more 'automatic' options whereas other distros leave it up to the user. That could be good in some ways as one is not dependent on the quality of the 'installer/uninstaler.' Also, if one distro hops, it might be good experience to know the process for the uninstall so some advantages there for knowing the process?
I don't know about you but I do like to have 2D and 3D and working in a usable fashion. If both open source drivers do this fine, okay, but I'm not sure.
My other option is to just have a basic install going and try this experiment early on so it won't be such a chore to re-install the entire OS if things get buggy. I'm not worried about losing data or borking it with my data being risked because I'll have it on a separate drive.
Anyway, I find this an interesting topic. I know it's way more convenient to have separate computers for these tests but for a little while, I probably won't have that option unless I can borrow/share the other computer.
three things to keep in mind:
- different kernel modules
- different openGL libraries
- different xorg.conf
both drivers will overwrite the openGL libraries, making a switch difficult. I also don't think it's possible to have both kernel modules loaded at the same time; the ensuing battle may explode your whole kernel.
gentoo has a cool system in place for the openGL libraries. It'll install each driver's openGL libs to a separate location and symlink the one you need. You can then use
to switch.Code:eselect opengl set nvidia eselect opengl set ati
Of course you need two different xorg.conf and a way to pass the correct one to X. Symlink-trickery works, butmay be easier.Code:Xorg -config xorg_ati.conf
You may need to modify the init-scripts to only load the correct kernel modules. If you're lucky, Xorg load the correct module automatically (haven't tested that in a while).
You could even write a script to shutdown X, unload the modules, run eselect, load the other ones and restart X with the other config to switch GPUs without rebooting (though I cannot guarantee if that'll work).
If you plan on switching the hardware, simply use $(lspci | grep ...) to detect what's plugged in. Otherwise, add a second runlevel and another grub-entry like
Code:kernel /vmlinuz root=/dev/sdxx softlevel=default_ati
If you don't want to use gentoo, you could write your own eselect-like scripts to add the symlinks. Install driver, move openGL-libs somewhere safe, install the other driver, move them somewhere else, apply symlinks as needed. Be careful when upgrading drivers. Also, your init-system may or may not understand the softlevel= kernel line, but most init systems should have some parameter with the desired effect.
Or, if all that is way to complicated: do as bridgman said, install the OS twice on separate partitions and switch via grub.
When you would use oss drivers fine, but nvidia has its own libs, ati has got a bit less, but mesa libs are always replaced. U lucid+ handles that with different subdirs and update-alternative -config gl_conf switching (you need ldconfig, update-initramfs -u and xchanged xorg.conf too). On a pure system or say Debian you have to uninstall the one part of the drivers and install the new ones. The Genotoo way must be similar to U technically but i never looked into it.