Ed Grochowski's Website
My GPU Finally Works
The Analog Synthesizer Revival
2015: Year of the Man-Bun
The Muppets
Half a Year with the Haswell-E PC
AT&T is Out of Control
TTL Turns 50
Daylight Savings Time Fail
Are Your Computers Working for You?
What is a Real Computer?
We're the Phone Company
Home PC Tenth Anniversary
Ducky DK2108 Keyboard Review
Older Articles

(c) 2016
Ed Grochowski

My GPU Finally Works

Ed Grochowski

Written 5-2-2016

The ATI Radeon Showing Its Stuff
(Height and width are scaled to 15% of original size)


With the latest Slackware Linux 14.2 RC2, my octo-core Haswell-E workstation with an ATI Radeon R7 265 graphics card finally has working GPU hardware acceleration. It has been 1 year, 7 months since I purchased the Radeon, and 4 years since AMD/ATI first introduced the Pitcairn GPU.

Unfortunately, GPU support in Linux has always played second banana to Microsoft Windows. On top of that, open-source graphics drivers receive lower priority than proprietary drivers, even on Linux.

In prior OS versions, I had been running the Radeon with hardware GPU acceleration disabled. I noted that the CPU can perform most 2D drawing operations faster than the GPU.

Graphics Driver Stack

2D acceleraton on the ATI Pitcairn relies on a software component called Glamor. Glamor maps 2D drawing operations onto OpenGL operations. This is necessary because modern GPUs no longer have separate hardware for 2D and 3D drawing.

Glamor began life in Intel's China Research Labs. It became usable thanks to the efforts of long-time X Windows guru, Keith Packard. Keith explains the technical challenges in his blog.

With the latest X11/Glamor/Mesa/LLVM software stack, the Radeon R7 265 works great. The most apparent differences compared to CPU-only rendering are:

  • Large area fills and copies are instantaneous. Windows can be dragged smoothly, without tearing.
  • Video playback can be scaled (I am viewing Youtube-resolution videos).
  • The glblur screensaver runs at 54FPS full-screen on the 4K monitor. Glblur's 28 polygons are easy, but shading 8M pixels is hard.

It is quite impressive to watch video, OpenGL, and normal X Windows being rendered simultaneously.