C'est ainsi que la nouvelle version de Mesa parvient à améliorer les GPU pour optimiser les performances des jeux et des applications sous Linux

Mesa 27.0 va changer la façon dont les GPU Arm Mali restituent les graphiques sous Linux. Le projet a confirmé que Kraid deviendra le compilateur de shader par défaut dans les pilotes Panfrost et PanVK, remplaçant le moteur utilisé jusqu'à présent. Le changement fonctionne déjà dans la branche développement et promet de générer moins d'instructions et d'accélérer le chargement des jeux et des applications.

Kraid est en développement depuis des mois comme alternative moderne aux compilateurs graphiques traditionnels pour les GPU Arm Mali récents. L'équipe a été intégrée pour la première fois en Tableau 26.2 en juin dernier et, avec la succursale Table de développement 27.0ce qui en fait déjà l'option par défaut pour les pilotes Panfrost Gallium3D et PanVK sur les GPU Arm Mali v9/Valhall et versions ultérieures. Nous vous expliquons ce qui change avec ce saut et dans quelle mesure les performances s'améliorent, comme détaillé par le projet Mesa dans le annonce technique publiée sur le blog Collaborala société qui dirige une grande partie du développement de ces pilotes graphiques gratuits pour Arm.

Ce qui change dans Mesa 27.0 avec le compilateur Kraid

Tableau 27.0 fait de Kraid le compilateur de shader par défaut pour les GPU Arm Mali récents, remplaçant le moteur précédent dans les pilotes Panfrost Gallium3D et PanVK. Le changement atteint les GPU Arm Mali v9/Valhall et aux générations suivantes, unifiant les chemins OpenGL et Vulkan sous le même moteur.

Panfrost Gallium3Dle pilote OpenGL de Mesa sur les graphiques Mali, exécute les shaders Kraid sur tout le matériel pris en charge, accélérant ainsi les jeux et les applications qui reposent sur cette API. PanVK, l'équivalent de Vulkan, suit le même chemin et permet aux titres qui utilisent cette API moderne de profiter de la nouvelle architecture de build. Il n'est pas précisé ce qui se passe avec les générations Mali antérieures à Valhall, qui seraient pour le moment exclues de ce changement jusqu'aux distributions package Mesa 27.0.

Cette unification simplifie le travail de ceux qui maintiennent Panfrost et PanVK, car les deux contrôleurs partagent désormais la même logique de génération de code pour le matériel compatible, ce qui nous permet de suivre plus facilement l'évolution des deux projets avec une seule référence technique.

Dans quelle mesure les performances s'améliorent avec Kraid sur les GPU Mali

Pour les shaders OpenGL, Kraid réduit presque un 20% les instructions générées par rapport au compilateur précédent. En termes de performances pures de jeu et d'application, il atteint entre quelques points de pourcentage d'images par seconde en plus dans les benchmarks OpenGL et Vulkan analysés par le projet Mesa lui-même.

Le gain le plus important n'est pas dans le FPS mais dans la vitesse de compilation : Kraid génère le code du shader plus rapidement et plus efficacement, ce qui réduit les temps d'attente lors du chargement de nouveaux niveaux ou textures dans les jeux. Ces chiffres sont généraux et ne sont pas ventilés par modèle de GPU spécifique ou par titre spécifique.

Xodus Nexus, le projet open source pour exécuter des jeux Game Pass sous Linux. Photo : GitHub.

Un compilateur de shader est la partie du contrôleur graphique qui traduit les effets visuels des jeux en instructions que le GPU comprend, et une grande partie des performances et des saccades lors du chargement de nouvelles scènes dépendent de sa qualité. Kraid modélise avec plus de précision la façon dont les GPU accèdent aux registres que son prédécesseur Mali v9/Valhall et ceux arrivés plus tard, ce qui explique cette amélioration à la fois de la vitesse de compilation et de l'efficacité du code final.

Quand Kraid atteindra-t-il tous les utilisateurs Linux

Le changement fonctionne déjà dans la branche développement Table de développement 27.0mais il atteindra les utilisateurs finaux lors de la publication de la version stable de Mesa 27.0, prévue pour le premier trimestre selon le calendrier du projet. En attendant, seuls ceux qui construisent Mesa à partir de branches de développement peuvent le tester.

À partir de cette version stable, chaque distribution Linux prendra un temps différent pour la packager, en fonction de ses propres cycles de mise à jour et des tests de stabilité appliqués par ses équipes de maintenance. Ceux d'entre vous qui utilisent Mali Valhall ou des GPU plus récents avec les pilotes Mesa gratuits remarqueront des shaders plus efficaces et un chargement plus rapide du contenu sans avoir à modifier aucun paramètre.

Il n'y a pas d'option pour le désactiver manuellement : son adoption sera automatique sur tous les matériels supportés dès que Mesa 27.0 passera de la branche de développement à la version stable, étape qui marquera l'arrivée réelle de Kraid sur les ordinateurs des utilisateurs Linux.

Questions fréquemment posées

Qu'est-ce qu'un compilateur de shader ?

C'est le composant du pilote graphique qui traduit les shaders de jeu et d'application en instructions compréhensibles par le GPU ; Sa qualité influence directement les performances et le temps de chargement des scénarios.

Kraid fonctionne-t-il sur les GPU pré-Valhall Arm Mali ?

Le changement se concentre sur les GPU Mali v9/Valhall et versions ultérieures ; Le traitement des générations précédentes n'a pas été précisé, il devrait donc être confirmé au moment du packaging de Mesa 27.0.

Dois-je activer Kraid manuellement dans Mesa 27.0 ?

Non. Il devient le compilateur par défaut sur le matériel pris en charge, il ne nécessite donc aucune action de l'utilisateur ni option de configuration manuelle.

Où pouvez-vous lire l'annonce officielle de Kraid ?

Les détails techniques se trouvent dans l'annonce publiée sur le blog de Collabora, la société qui pilote une grande partie du développement de Panfrost et PanVK.

Quelle est la différence entre Panfrost et PanVK ?

Panfrost Gallium3D est le pilote OpenGL de Mesa pour les GPU Arm Mali et PanVK est le pilote Vulkan ; les deux utiliseront Kraid sur les GPU pris en charge à partir de Mesa 27.0.