In this Graphics Execution Manager talk, Eric started talking about their past memory management methods (i830_memory.c, exa_offscreen.c, and texmem.c) that imposed many limitations along with the shortcomings they experienced with TTM. A new memory manager was needed for composited OpenGL, EXT_framebuffer_object, EXT_texture_from_pixmap, reduced memory consumption, and private back-buffers.
In this talk the next plans they have for GEM are fence register management, hardware contexts, user-land cache management, rectangular pwrite, GIT mmap, and fault-based flushing.
During this talk, Intel's Keith Packard called for a common API for GEM that can be used across multiple drivers. "I would love to see the GEM API extended to support discrete graphics cards," noted Packard. Keith though is quite confused over David Airlie's decision to use a GEM-ified TTM memory manager for the open-source ATI driver rather than fully using their Graphics Execution Manager.