Linux – How to choose a graphics card for Linux

graphicshardware-compatibilitylinuxxorg

I'm building or buying a new Linux system, and I'm trying to select the best graphics card for my needs. How do I go about making this decision?

There's dozens of computer-gear review sites which drool over every detail of new graphics hardware and perform detailed benchmarks and pros and cons — for Microsoft Windows. Are these ever useful sources of information for Linux too? Does any site at least give Linux a cursory look?

I'm primarily interested in good 2D performance, but with fancy new desktop environments now requiring hardware-accelerated 3D, I need to consider that too. Where can I find pre-purchase information on that?

I strongly prefer having an open source driver. How do I judge which open source drivers are the best in terms of features support and performance, without joining a dozen different mailing lists? Are specific companies almost always the best bet, or does it change?

What are the advantages and drawbacks of a closed-source driver? Is this mostly about 3D performance, or are there other features enabled by proprietary drivers that I might miss out on? Since a closed-source driver will mark the Linux kernel as tainted, are the closed-source companies good at providing direct end-user support for related problems? Is the state-of-the-art finally such that I can choose between open or closed for any given graphics card, or do some models require one or the other?

It'd be great if the card just worked hassle-free with whatever modern Linux distribution I choose, with no need to go through a long how-to process. Is this a reasonable hope, and how can I best find a card that'll work that way?

How do I find if a specific graphics driver fits a given model on the market? Is it best to buy older cards in order to insure that support is available?

Best Answer

Open source drivers are getting pretty good these days. I haven't had any problem with Intel or AMD hardware.

Intel
I hear the old ones are pretty bad, but my G4500HD does everything I need well. Video acceleration could be better though. There isn't a proprietary driver for Intel either, your only choice is open source. The composited 3D desktop in KDE works great on my laptop which has an Intel chip.

AMD/ATi
Right now the older cards are better supported than the new ones. If you could somehow get an x1800 or something from the same generation that would probably be the best. The r300g driver is getting more development work than r600g. That's not to say r600g is bad, in fact it's great! It's just somewhat behind the driver for the older hardware. AMD has a proprietary driver for the new hardware, but in my experience you want to avoid it; it's pretty bad. The hardware covered by r300g isn't supported by that driver, so the open driver is your only option there. And like the Intel chip I have, my Radeon 4850 runs the composited desktop in KDE well.

At the moment, I wouldn't recommend an HD6000 series. The 6900s have no support at all in the open driver, and the others have basic support. Go for an HD5000 or an HD4000.

Nvidia
They have a really good proprietary driver, but the open driver is struggling along. It's getting better all the time, but Nvidia is doing nothing to help the developers. At least AMD helps out a little bit for their hardware.

The advantage to having an open driver is that it will work out of the box in any distro. If you install Fedora, everything will work including dual screen and 3D. The proprietary ones are painful to setup. Neither of them properly set up my dual screens. It was easier to setup with Nvidia which isn't saying much because the AMD blob was just awful at this. Also, anytime you update the kernel, you have to reinstall the driver. Most distros take care of this if you install the in-repo version, but if you don't it's annoying to boot up one morning and realize you updated the kernel and now X.org doesn't work.

If you aren't planning on playing 3D games, either the Intel or AMD drivers are the best. The AMD driver is more modern than the Intel one, it uses the Gallium3D architecture within Mesa (that's what the g stands for in r600g), but they both get the job done.

Related Question