A GEM-ified TTM Manager For Radeon

Posted by Michael Larabel on August 26, 2008

Back in May when X.Org developers were voicing concerns about Tungsten's TTM as being the kernel memory manager used for graphics drivers, Keith Packard had unveiled the work Intel had been doing for an alternate kernel memory manager. This memory manager they call GEM, or the Graphics Execution Manager, is a competing solution but it has some advantages such as being simpler to develop drivers around (A Technical Explanation of Intel's GEM). Intel then continued in throwing out their TTM code and merging GEM to master.

This unexpected introduction of GEM has caused the other driver developers to rethink their memory management situation and it has also generated some additional headaches within the X.Org community. For instance, a new X acceleration architecture has been introduced (albeit based off the EXA API) but with hooks for GEM. In addition, the forthcoming release of X Server 1.5 / X.Org 7.4 has lost DRI2 support since it depended upon the TTM interface.

Red Hat's David Airlie, who mostly works on the xf86-video-ati driver, has a brief update on some of the work he has been doing with GEM. In the DRI development mailing list, Airlie shares that he has removed all the TTM interfaces and ioctls from the kernel API, a DRM hardware lock file, object zeroing for the video memory, and has built a Radeon GEM interface that resides on top of the TTM internals. Some developers have voiced concerns about GEM being designed with just Intel in mind, but now David has an interface that's compliant with the GEM, but at it's heart is still TTM. This work can be found in his modesetting-gem git branch.

Discuss this article in our forums, IRC channel, or email the author. You can also follow our content via RSS and on social networks like Facebook, Identi.ca, and Twitter (@Phoronix and @MichaelLarabel). Subscribe to Phoronix Premium to view our content without advertisements, view entire articles on a single page, and experience other benefits.
Latest Hardware Reviews
  1. Sumo Lounge Emperor
  2. Gallium3D Continues Improving OpenGL For Older Radeon GPUs
  3. 15-Way Open vs. Closed Source NVIDIA/AMD Linux GPU Comparison
  4. Nouveau vs. NVIDIA Linux Comparison Shows Shortcomings
Latest Software Articles
  1. Btrfs vs. EXT4 vs. XFS vs. F2FS On Linux 3.10
  2. AMD Radeon R600 GPU LLVM 3.3 Back-End Testing
  3. F2FS File-System Shows Regressions On Linux 3.10
  4. Previewing The Radeon Gallium3D Shader Optimizations
Latest Linux News
  1. Benchmarking The Intel P-State, CPUfreq Changes
  2. FreeBSD Still Working On Next-Gen Package Manager
  3. DNF Still Advancing As Experimental Yum For Fedora
  4. Logitech Begins Supporting Linux Users
  5. Modern Intel Gallium3D Driver Still Being Toyed With
  6. Linux 3.10 Kernel Benchmarks On A Core i7 Laptop
  7. GCC 4.8.1 Compiler Due To Be Out Next Week
  8. Linux 3.10 Kernel Benchmarks For Intel Ivy Bridge
  9. Linux's "Ondemand" Governor Is No Longer Fit
  10. Firefox 22 Beta Enables WebRTC Support
  11. OpenSUSE 13.1 Milestone 1 Released
Latest Forum Talk
  1. DNF Still Advancing As Experimental Yum For Fedora
  2. Modern Intel Gallium3D Driver Still Being Toyed...
  3. The Last GNOME 3.8 Point Release Has Been Made
  4. Sumo Lounge Emperor
  5. Logitech supports linux!
  6. Logitech Begins Supporting Linux Users
  1. Computers
  2. Display Drivers
  3. Graphics Cards
  4. Motherboards
  5. Peripherals
  6. Processors
  7. Software
  8. Operating Systems
  9. All Articles
  1. Linux Benchmarking
  2. OpenBenchmarking.org
  3. Phoronix Test Suite