- Graphics Execution Manager
-
Graphics Execution Manager, ou GEM, est un gestionnaire de mémoire pour processeurs graphiques inclus dans le noyau Linux. Il est conçu pour décharger les pilotes graphiques de cette tâche.
GEM a été développé initialement pour les architectures Intel (qui ont la particularité d'avoir une mémoire partagée) par deux ingénieurs de la société : Keith Packard et Eric Anholt. Selon des tests préliminaires effectués par le premier, les performances d’une puce Intel i915 étaient augmentées de 50 à 60 %[1].
Maintenant que GEM est intégré au noyau Linux, les pilotes des principales architectures graphiques (Intel, ATI Technologies, etc.) devraient rapidement être adaptés pour en tirer profit.
Intégrer le gestionnaire de mémoire au noyau Linux était un prérequis à la gestion des modes d'affichage par le noyau (kernel-based mode-setting).
GEM est également conçu pour être compatible avec les noyaux BSD.
Sommaire
Histoire
GEM a été présenté par Intel en mai 2008 comme une alternative au gestionnaire de mémoire graphique Translation Table Maps (TTM) développé par la société Tungsten Graphics (rachetée par VMware en novembre 2008) et qui était alors pressenti par la plupart des développeurs de X.Org pour intégrer le noyau Linux[2].
L’inclusion de GEM dans le noyau Linux à partir de sa version 2.6.28 sortie en décembre 2008 semble donner raison à Intel.
Comme résultat de cette hésitation première, les pilotes libres pour processeurs ATI et NVIDIA adoptent un fonctionnement mixte. Ces derniers utilisent en interne un gestionnaire graphique équivalent à TTM tout en s'appuyant sur l'interface de programmation de GEM pour communiquer avec le reste du système graphique[3].
La version 2.6.31 du noyau Linux intégre les composantes nécessaires pour permettre aux carte ATI Radeon de bénéficier de ces avancées[4].
Suivront les architectures NVIDIA avec le projet Nouveau, et VIA avec le projet OpenChrome emmené par la société Tungsten Graphics.
Notes et références
- (en) L'annonce de GEM par Keith Packard sur la liste de diffusion des développeurs de DRI le 13 mai 2008
- (en) "Great Linux Innovations Of 2008" par Michael Larabel, Phoronix, 30 décembre 2008
- (en) "A GEM-ified TTM Manager For Radeon" par Michael Larabel, Phoronix, 26 août 2008
- (en) "Linux 2.6.31-rc1 Kernel Released" par Michael Larabel, Phoronix, 25 juin 2009
Voir aussi
Articles connexes
Liens externes
- (en) "GEM update" par Keith Packard, 4 juillet 2008
Wikimedia Foundation. 2010.