L'accélération graphique sur GNU/Linux
Préambule
Les cartes graphiques offrent des ressources matérielles afin d'accélérer tous les traitements liées aux graphismes. Ces traitements sont l'affichage de vidéo (décompression mpeg), l'affichage de DVD en plein écran, les images animées 3D (jeux, animations,...).
Pour ce faire, le noyau doit pouvoir dialoguer avec la carte graphique. Ce dialogue est établit par un pilote (driver) qui pourra tirer pleinement parti des ressources matérielles disponibles.
Par la suite, le serveur graphique (Xorg, XGL,...) pourra utiliser ces ressources afin d'accélérer les affichages ou permettre des effets de bureaux spectaculaires.
Chez Microsoft, il existe un API standard qui se nomme DirectX. Sous Linux, il existe également un API standard qui est un équivalent libre à DirectX, il s'agit de l'OpenGL.
L'accélération graphique est-elle activée ?
Avant de commencer toute manipulation, il est préférable de savoir si l'accélération graphique n'est pas déjà activée. En effet, certaines cartes sont reconnues immédiatement par le système et dès lors, il n'est pas nécessaire de se lancer dans des paramétrages plus avancé.
Une commande console vous permettra de vérifier si le serveur graphique (Xorg, XGL,...) peut utiliser les ressources matérielles :
- Code:
-
glxinfo | grep "direct rendering"
La valeur correspondant à direct rendering est yes (ou no) si l'accélération est (ou n'est pas) activée.
Si elle n'est pas activée, il se peut que plusieurs avertissements (warnings) s'affichent à l'écran.
Comment mesurer le gain de l'accélération graphique ?
Avant toute modification d'un système informatique en vue d'obtenir un gain de performance, il est de bonne pratique de mesurer la vitesse avant et après la modification. En procédant de cette manière, on est assuré que la situation est améliorée et pas détériorée.
Pour mesurer la vitesse de traitement de l'accélération graphique, il existe une commande console qui affiche 3 roues dentées en 3D ainsi que le nombre d'images calculées par seconde.
- Code:
-
glxgears -printfpsOu
ou
- Code:
-
glxgears -iacknowledgethatthistoolisnotabenchmark
Exécutez cette commande avant toute modification du pilote graphique et notez le nombre obtenu. De cette manière, vous pourrez le confronter avec le nombre d'images calculées par seconde obtenu après installation du pilote graphique.
Notez bien que les FPS obtenu n'ont pas de lien avec les performances réelles de cartes (voir ce lien en anglais).
Comment déterminer le chipset de la carte graphique ?
Pour activer l'accélération graphique sur votre matériel, il est nécessaire de connaître le chipset (le co-processeur graphique) qui est présent dans votre machine. Il existe un nombre réduit de chipset qui sont présents dans les marques de cartes graphiques.
La marque de la carte importe peu dans la sélection du pilote à utiliser; ce qui compte, c'est de savoir quel chipset la carte utilise.
Pour obtenir cette information, vous pouvez utiliser la commande suivante :
- Code:
-
lspci | grep "VGA"
Maintenant que vous connaissez le chipset présent, il ne vous reste plus qu'à (éventuellement) installer le pilote pour profiter de l'accélération graphique.
Comment activer l'accélération graphique ?
Suivant le modèle et le type de chipset, la procédure d'activation peut être sensiblement différente.