La pile graphique Linux est en perpétuelle évolution afin d’ajouter la gestion de nouveau matériel. Cette évolution matérielle ainsi que les nouvelles spécifications logicielles ont forcés le serveur graphique X à se découper en plusieurs composants dont un tourne maintenant dans le noyau Linux, le Direct Rendering Manager (DRM). Une présentation rapide de ces différents composants et leur rôle sera effectuée avant de s’intéresser au nouveau changement majeur dans le code commun, la technologie Optimus d’NVIDIA.
Un ordinateur portable équipé de la technologie Optimus contient deux processeurs graphiques (GPUs), un de chez Intel et un de chez NVIDIA. Cette technologie permet d’allier la faible consommation du GPU Intel quand la machine est peu utilisée aux performances du GPU NVIDIA lorsque l’utilisateur joue. Cette technologie est cependant un cauchemar à gérer coté noyau bien que les dernières briques nécessaires à sa gestion complète soient en cours de finalisation. Une explication plus approfondie de ce problème sera faite et nous verrons en quoi cette nouvelle architecture logicielle a permis d’ajouter une accélération graphique sur les processeurs embarqués SoCs tels que Tegra.
Le cas du pilote Open Source NVIDIA, appelé « Nouveau » sera ensuite étudié. C’est le pilote graphique le plus communautaire car il est développé sans l’aide d’NVIDIA et a su attirer plusieurs contributeurs réguliers, dont moi même! Nous ferons un rapide historique du projet avant de parler des développements actuels et les problèmes liés à l’absence de documentation.
La fin de cette présentation sera ensuite laissée aux participants afin qu’ils puissent poser des questions plus générales sur la pile graphique, si ils le souhaitent.
Martin Peres, Laboratoire Bordelais de Recherche en Informatique