35-Way NVIDIA/AMD Proprietary Linux Graphics Driver Comparison
Last week with Phoronix turning ten years old I celebrated by testing 65 different GPUs with the open-source Linux graphics drivers from Intel, AMD, and Nouveau. I also followed-up with power efficiency and thermal benchmarks from all of the graphics cards that played nicely on the latest open-source drivers. Today I'm following up with the next round of testing by checking out the proprietary NVIDIA and AMD Catalyst graphics drivers under Linux with 35 different graphics cards.
After carrying out all of the PCI Express graphics cards at my disposal for last week's open-source tests, I then immediately turned to testing all of the supported GPUs by the proprietary AMD and NVIDIA graphics drivers. Today's comparison is still large (35 graphics cards) but smaller than the earlier comparison because the latest mainline drivers don't support the diverse selection of Radeon and GeForce GPUs going back as many years as the open-source drivers. NVIDIA does maintain multiple legacy drivers that work well with updated Linux distributions, but for the Radeon HD 4000 series and older hardware, AMD doesn't really maintain their legacy Catalyst Linux driver for new Linux kernel and X.Org Server releases. As a result, just the latest mainline AMD Catalyst and NVIDIA driver releases were testing, which gives us support for the GeForce 8 series and newer and on the AMD side is the Radeon HD 5000 series and newer.
The latest proprietary Linux graphics drivers at the time of testing was Catalyst 14.6 Beta (fglrx 14.20.7 / OpenGL 4.3.12967) and NVIDIA 337.25. All benchmarking happened from the same Intel Core i7 4770K system as used in the original open-source GPU driver tests while running Ubuntu 14.04 LTS x86_64 with the Linux 3.13 kernel. The graphics cards used for this comparison included:
Gigabyte NVIDIA GeForce 8500 GT 256MB (500/400MHz)
ASUS NVIDIA GeForce 8600 GT 256MB (540/702MHz)
ECS NVIDIA GeForce 8800 GT 256MB (600/700MHz)
Gigabyte NVIDIA GeForce 9500 GT 1024MB (550/400MHz)
XFX NVIDIA GeForce 9600 GSO 512MB (500/900MHz)
NVIDIA GeForce 9800 GTX 512MB (675/1100MHz)
XFX NVIDIA GeForce GT 220 1024MB (625/400MHz)
ECS NVIDIA GeForce GT 240 512MB (550/1700MHz)
Gigabyte NVIDIA GeForce GTX 460 768MB (675/1804MHz)
eVGA NVIDIA GeForce GT 520 1024MB (810/500MHz)
eVGA NVIDIA GeForce GTX 550 Ti 1024MB (951/2178MHz)
Zotac NVIDIA GeForce GT 610 1024MB (810/533MHz)
MSI NVIDIA GeForce GTX 650 1024MB (1084/2500MHz)
NVIDIA GeForce GTX 680 2048MB (1006/3004MHz)
eVGA NVIDIA GeForce GT 740 1024MB (1084/2500MHz)
eVGA NVIDIA GeForce GTX 750 1024MB (1019/2505MHz)
NVIDIA GeForce GTX 750 Ti 2048MB (1019/2700MHz)
NVIDIA GeForce GTX 760 2048MB (980/3004MHz)
NVIDIA GeForce GTX 770 2048MB (1045/3505MHz)
NVIDIA GeForce GTX 780 Ti 3072MB (875/3500MHz)
NVIDIA GeForce GTX TITAN 6144MB (836/3004MHz)
Sapphire AMD Radeon HD 5450 512MB (650/400MHz)
AMD Radeon HD 5750 1024MB (700/1150MHz)
AMD Radeon HD 5770 1024MB (850/1200MHz)
Sapphire AMD Radeon HD 5830 1024MB (800/1000MHz)
HIS AMD Radeon HD 6450 1024MB (625/667MHz)
Sapphire AMD Radeon HD 6570 512MB (650/1000MHz)
Sapphire AMD Radeon HD 6770 1024MB (850/1200MHz)
Sapphire AMD Radeon HD 6870 1024MB (900/1050MHz)
Sapphire AMD Radeon HD 6950 2048MB (800/1250MHz)
ASUS AMD Radeon HD 7850 1024MB (860/1200MHz)
XFX AMD Radeon HD 7950 3072MB (900/1375MHz)
Sapphire AMD Radeon R7 260X 2048MB (1150/1650MHz)
Gigabyte Radeon R9 270X 2048MB (1100/1400MHz)
XFX Radeon R9 290 4096MB (947/1250MHz)
Compared to the original article where the performance-per-Watt and GPU core temperature data was split into a separate article, for the proprietary driver testing it's all part of this article. Additionally, for this article with using the high-performance proprietary drivers we are using some more demanding Linux games and OpenGL benchmarks. As always, the testing was all organized and facilitated in a fully-automated and reproducible manner using the open-source Phoronix Test Suite software. The AC system power consumption was monitored using a USB-based WattsUp Pro power meter and the GPU thermal data was obtained via the AMD/NVIDIA driver interfaces -- all automated via the Phoronix Test Suite by setting the MONITOR=sys.power,gpu.temp environment variable.