Graphics Execution Manager
# Graphics Execution Manager

Graphics Execution Manager (GEM, en español: administrador de ejecución de gráficos) es una unidad de manejo de memoria moderna, especializada para uso en controladores de dispositivo para chipsets gráficos. Este gestiona la memoria de gráficos, controla el contexto de ejecución, y administra el entorno Non-Uniform Memory Access (NUMA) en los chipsets gráficos modernos. Múltiples procesos pueden compartir recursos de dispositivos gráficos sin la necesidad de almacenar y restaurar el estado completo de la tarjeta gráfica entre cambios. El GEM se asegura de que no existan conflictos en la compartición de datos entre aplicaciones, administrando la sincronización de la memoria. Este utiliza muchos subsistemas del kernel existentes para su operación, y por lo tanto el tamaño de su código es muy modesto.

Está incluido en el kernel Linux desde la versión 2.6.28. También está diseñado para ser compatible con los kernels de los principales sistemas BSD activos.

El anuncio original de GEM incluyó documentación sobre su API.

## Historia

Esta tecnología fue desarrollada por Intel, empezando en mayo del 2008, como una alternativa minimalista y fácil de usar al manejador de memoria TTM (Translation Table Maps), desarrollado por Tungsten Graphics.

