This page grew out of a conversation on the Usenet comp.os.linux.hardware newsgroup. It can be frustrating for Free Software users to buy a new graphics card because there is very little information available about 3D/OpenGL graphics support and performance in the Free Software community. Some users opt to install proprietary graphics card drivers because of the limited support available in current free software drivers. X.Org includes Direct Rendering Infrastructure (DRI) support for a variety of 3D graphics hardware but often doesn't support every feature or doesn't offer performance as fast as that of the proprietary drivers. This website was created for those of us who prefer to use only Free Software or Open Source software. It provides information about video cards with 3D acceleration support and benchmarks to give an idea of their performance. We also provide performance information for cards that rely solely on software emulation for 3D support.

Based on our results to date, this card represents the highest 3D/OpenGL performance currently available in the Free Software community. DISCLAIMER Please see the FAQ before basing a purchasing decision on this recommendation, particularly if you have very specific 3D acceleration needs.

To find general information on the status of DRI support for other hardware, check the Freedesktop DRI Status page and the Mesa DRI CVS . While not always up to date, the best overview of DRI support is the Freedesktop DRI Feature Matrix . If you're looking for general technical information on the hardware itself, a good starting place is the 3D Chipset Specs website .

Wacco Project VGA is working on a more minimal Free Hardware design for a PCI graphics card that meets the complete VGA specification for around $100. Once done, they may work on a PCI-E card and 2D acceleration.

The Open-Graphics project is attempting to develop an Free Hardware design for a graphics card with 3D acceleration and drivers that fully support X 3D/OpenGL acceleration. They need help with hardware design review, documentation, driver development and more. To find out more or volunteer to help, visit one of these sites:

The UtahGLX project has some older code supporting the nVidia Riva, TNT, and GeForce hardware. This could could be ported to DRI and used in the nv driver, perhaps in conjunction with the nouveau project. No one is currently working on this. A volunteer familiar with X and DRI is needed. See the DRI nVidia page for details.

The users that have installed the proprietary driver can help the development of Nouveau, by sending information about their cards, see http://nouveau.freedesktop.org/wiki/REnouveauDumps

The nouveau project is attempting to reverse engineer nVidia 3D acceleration and develop working DRI support for Xorg. They have developed a number of tools to assist with the process and need help primarily from software developers familiar with X and DRI.

The r300 project has developed an experimental driver for ATI cards based on the R300 series of chips (including the Radeon 9500 and newer cards). The R300 code has been moved into the Mesa CVS but still needs additional work.

The X.Org Wiki Intel i810 driver page needs to be updated with more information about what hardware is supported, who maintains the code, links to the GIT or CVS archives, and any other helpful info you can think of. Anyone is welcome to sign in and edit the page. See the X.Org nv page for ideas.

The X.Org Wiki Radeon driver page needs to be updated with more information about what hardware is supported, who maintains the code, links to the GIT or CVS archives, and any other helpful info you can think of. Anyone is welcome to sign in and edit the page. See the X.Org nv page for ideas.

To gather the results in the table below, a simple shell script was proposed Henrik Carlqvist in a comp.os.linux.hardware discussion and subsequently revised by Michael Mauch and others. This script uses glxgears to get a frame rate for 3D rendering. We are aware glxgears isn't intended as a benchmark. It's been compared to bogomips for graphics cards. But it is readily available on almost every computer running Xorg and provides an interesting, if non-accurate baseline for comparing hardware. If you can propose something better that will run on as many systems without needing to download and compile special benchmarking tools, please let us know. But see the FAQ before emailing to complain that you think glxgears sucks as a benchmark. We already know that.

This is the current version of the script:

grep VGA /proc/pci || lspci | grep VGA | colrm 1 4 ; \ egrep "model name|MHz" /proc/cpuinfo ; \ xdpyinfo | egrep "version:|dimensions|depth of" ; \ glxinfo | egrep -A2 "direct rendering|OpenGL vendor" ; \ uname -sr ; \ vblank_mode=0 glxgears & sleep 30 ; killall glxgears

You can help by running this script on your hardware and reporting the results in the table below. The goal is to keep the list sorted in descending order by performance based on the glxgears FPS rating. If you're familiar with Wiki syntax, feel free to create an account and add your results directly to the table below. Otherwise, you can email them to me and I'll add them. Please note that we are only interested in the results produced by Free Software or Open Source Software. If you are using a proprietary driver your results will not be helpful to us.

Note 1: on newer versions of glxgears, it may be necessary to add -printfps to get the FPS number.

Note 2: on recent versions of X.Org (7.2 and newer) xdpyinfo reports the XServer version instead of the X.Org version. So X.Org 7.2 == XServer 1.3, X.Org 7.3 == XServer 1.4 etc. Don't worry about it, just send us the output. :)

Note 3: Occasionally some distros don't report everything properly. Looks over your results and if you see some information missing that's in all the other results reported in the table below, try to look it up manually and include it. Thanks!

Note 4: The above script will run glxgears at the default priority on your system. It has been suggested that running it at a higher priority will be more accurate. While this will generate higher numbers, it probably doesn't reflect how your system is used in the real world. If you'd like to try this, the following commands will do it.

su root nice -n -19 sh -c 'glxgears& sleep 30; kill $!'

Realistically though, we'd prefer you report the numbers you get at the default priority for two reasons, 1) it makes it easier to compare with the existing data and 2) it better reflects real world usage.

Note 5: It turns out that the Linux kernel version does play a role. E.g., the system that achieved 6295fps with Linux-2.6.17 achieves over 8000 fps with 2.6.25.5 (everything else stayed the same); so you might want to mention the version of the kernel in the Notes column.

Note 6: It is no longer possible to determine what video driver your system uses from looking at the xorg.conf file on either Fedora or Ubuntu distros of GNU/Linux. We expect this to be the case with more distros soon. At present we're not aware of any easy way for an end user to determine what video driver they're using on newer GNU/Linux distros. If anyone else knows a way to do this, please enlighten us. Meanwhile, the best we can suggest is to grep /var/log/Xorg.0.log (of Fedora systems at least) for the term “autoconfigured”. You should get a result such as “(= Matched ati for the autoconfigured driver” - this means you're using the ATI video driver.