- VTE (Virtual TErminal library) est la bibliothèque qui sert de base aux émulateurs de terminal GNOME. Elle est utilisée par des applications comme GNOME Terminal, Console, Black Box, Tilix, Terminator et Ptyxis, ainsi que par les terminaux intégrés de Builder et Workbench.
- Pendant le cycle de GNOME 46, les performances de VTE se sont nettement améliorées. Cet article mesure l’ampleur réelle de ce gain et examine quelle différence les utilisateurs peuvent percevoir en pratique.
Ce qui a été mesuré et la méthode
- Il existe plusieurs façons de mesurer les performances d’un émulateur de terminal, mais cet article se concentre sur la latence de saisie (
Input Latency).
- La latence de saisie correspond au temps écoulé entre le moment où l’on appuie sur une touche du clavier et celui où la couleur des pixels change à l’écran. Une application avec une faible latence de saisie paraît plus réactive, tandis qu’une application avec une latence élevée peut sembler lente.
- Pour mesurer cette latence, un testeur matériel de latence d’entrée a été utilisé. Il est composé d’un capteur de luminosité relié à une carte Teensy, elle-même connectée à l’ordinateur via USB.
Résultats des tests de latence de saisie
- Premier test : création d’un champ de saisie avec la commande
cat > /dev/null, puis mesure du temps nécessaire pour que le curseur bloc se déplace d’une cellule vers la droite après avoir appuyé sur la touche Espace
- Les terminaux VTE se sont fortement améliorés sous Fedora 40 par rapport à Fedora 39, au point d’atteindre un niveau presque équivalent à celui d’Alacritty
- Deuxième test : ouverture d’un fichier README dans neovim, puis mesure pendant le défilement du tampon de texte avec
Ctrl+D et Ctrl+U
- Là aussi, les terminaux VTE de GNOME 46 montrent une nette amélioration et affichent des performances presque équivalentes à celles d’Alacritty
- En comparant tous les terminaux de Fedora 40 en une seule fois, le test sous neovim montre une hausse de la latence de saisie par rapport au test avec
cat, mais cette hausse reste d’un niveau similaire pour tous les terminaux
Résultats des tests vtebench
- Exécution de la suite de tests
vtebench d’Alacritty dans le même environnement
- Il s’agit de tests mesurant les performances de lecture et d’analyse du PTY, également utiles pour détecter des crashs dans VTE
- Le VTE de GNOME 46 montre aussi des progrès dans
vtebench, sans toutefois atteindre le niveau d’Alacritty
Conclusion
- Dans GNOME 46, les performances de VTE se sont fortement améliorées, au point que la latence de saisie atteint presque le niveau des terminaux les plus rapides
- Si vous évitiez jusqu’ici les terminaux basés sur VTE à cause de leur lenteur de réaction et de leur latence de saisie, cela vaut désormais la peine de leur redonner une chance (version recommandée : VTE 0.76 ou supérieure)
Avis de GN⁺
- Les gains de performances des terminaux basés sur VTE sont très encourageants. Ils devraient contribuer de manière significative à améliorer l’expérience utilisateur.
- L’utilisation d’un testeur matériel pour mesurer la latence de saisie est intéressante. Les explications détaillées sur le processus de test et l’interprétation des résultats étaient également instructives.
- Il serait aussi intéressant de comparer ces résultats au terminal par défaut de macOS, Terminal.app, ou au nouveau terminal de Windows, Windows Terminal.
- On peut s’attendre à ce que les améliorations de performances de VTE aient un impact positif sur l’ensemble de l’écosystème GNOME. Il semble toutefois rester des marges de progression sur certains points, comme l’accessibilité ou les barres de défilement.
- C’est une très bonne nouvelle pour les utilisateurs de bureaux Linux. On peut espérer que les différents émulateurs de terminal continueront à progresser en s’appuyant sur les améliorations apportées à VTE.
1 commentaires
Avis Hacker News
cat, avec le souhait de tester davantage de terminaux, en particulier la console Linux native