Graphics Execution Manager

From Wikipedia, the free encyclopedia

Jump to: navigation, search

The GEM (Graphics Execution Manager) is a modern memory manager specialized for use in device drivers for graphics chipsets. It manages graphics memory, controls the execution context and manages the Non-Uniform Memory Access (NUMA) environment on modern graphics chipsets. Multiple applications can share graphics device resources without the need to store and restore the entire graphics card state between changes. GEM ensures conflict-free sharing of data between applications by managing the memory synchronization. It uses many existing kernel subsystems for its operations and hence has a very modest code size.

GEM is included in the Linux kernel from version 2.6.28 although will be actually replaced by GEM-ified TTM manager[1] developed for ATI Radeon driver and VIA S3 Graphics chipsets.[2] GEM is also designed to be compatible with "*BSD" kernels.

The original announcement of GEM includes documentation of its API.[3]

[edit] History

GEM was developed by Intel, starting in May 2008, as a minimalist, easy-to-use alternative to the TTM (Translation Table Maps) memory manager developed by Tungsten Graphics.[4] Even if GEM is simpler to develop drivers, it was designed with Intel hardware in mind and collided with current X.Org Server development (notably DRI2 and new EXA acceleration architecture). So it is clear why GEM is being replaced and superseeded by GEM-ified TTM Manager[1] developed currently for ATI Radeon and VIA S3 Graphics.

[edit] References

  1. ^ a b Michael Larabel (August 26, 2008). "A GEM-ified TTM Manager For Radeon". Phoronix.com. http://www.phoronix.com/scan.php?page=news_item&px=NjY3Ng. Retrieved on 2009-06-18. 
  2. ^ Michael Larabel (June 10, 2009). "TTM Memory Manager Gets Ready For Release". Phoronix.com. http://www.phoronix.com/scan.php?page=news_item&px=NzMxOA. Retrieved on 2009-06-18. 
  3. ^ Keith Packard (May 27, 2008). "GEM - the Graphics Execution Manager". LWN.net. http://lwn.net/Articles/283798/. Retrieved on 2009-06-18. 
  4. ^ Michael Larabel (June 12, 2008). "Intel's GEM Merging To Master". Phoronix.com. http://www.phoronix.com/scan.php?page=news_item&px=NjUyMQ. Retrieved on 2009-06-18. 

[edit] External links

Personal tools
Languages