Graphics Execution Manager
From Wikipedia, the free encyclopedia
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
- ^ 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.
- ^ 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.
- ^ Keith Packard (May 27, 2008). "GEM - the Graphics Execution Manager". LWN.net. http://lwn.net/Articles/283798/. Retrieved on 2009-06-18.
- ^ 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
- Michael Larabel (May 14, 2008). "Intel's Graphics Execution Manager". Phoronix.com. http://www.phoronix.com/scan.php?page=news_item&px=NjQ3Ng. Retrieved on 2009-06-18.
- Keith Packard (Fri 04 Jul 2008). "GEM update". Keithp.com. http://keithp.com/blogs/gem_update/. Retrieved on 2009-06-18.

