banner

Blog

Feb 03, 2024

SteamOS 3.5 est presque là et inclut un correctif pour le bug de performances le plus sournois du Steam Deck

SteamOS 3.5 inclut un nouveau noyau Linux, un pilote graphique et un correctif pour un méchant bug de performances SMT.

Lorsqu’une nouvelle mise à jour Windows arrive, nous avons tendance à râler. Vraiment, maintenant, Windows ? Qu'est-ce que celui-ci va casser ? En ai-je vraiment besoin ? "Rappelle-moi plus tard." En revanche, une nouvelle version du noyau Linux apparaît toujours comme un mini-événement dans la communauté open source, promettant de nouvelles fonctionnalités intéressantes et des améliorations de performances pour les très nombreux appareils exécutant Linux. Le noyau est l'élément fondamental de Linux que de nombreuses distributions comme Ubuntu et Arch (sur lequel est basé SteamOS de Valve) se transforment en systèmes d'exploitation à part entière.

Nous reconnaissons que sans les options et tout ce qui est puissant dans le jeu sur PC, le Steam Deck n'est rien

Le Steam Deck partagera bientôt l'enthousiasme du « nouveau noyau », car la prochaine grande mise à jour de Valve, SteamOS 3.5, sera la première à mettre à niveau le noyau Linux depuis son lancement. Cela signifie une multitude de bonnes choses pour les propriétaires de Steam Deck, même si vous ne remarquerez probablement même pas la plupart d’entre elles.

Mettre à jour le noyau signifie « se rapprocher des dernières et des meilleures avec de nombreux ajouts intéressants, des correctifs de performances et des correctifs fonctionnels qui amélioreront toutes sortes d'aspects du système », a déclaré Pierre-Loup Griffais de Valve à PC Gamer. "En ce qui concerne les fonctionnalités de base, l'exécution des jeux et les performances, ce genre de correctifs à ce stade est pour la plupart hors de portée, vous ne vous attendez donc à rien de transformateur."

Ce résumé comporte cependant une mise en garde : Valve propose un correctif de performances important pour le Steam Deck à venir dans SteamOS 3.5. Le processeur du Steam Deck prend en charge une fonctionnalité moderne commune appelée SMT, ou multithreading simultané. Vous connaissez peut-être mieux le nom d'Intel, qui est Hyper-Threading. En termes simples, SMT est la possibilité d'exécuter deux threads sur un seul cœur de processeur. Il devrait s'agir d'une amélioration globale des performances, mais un problème obscur dans le noyau Linux fourni avec le Steam Deck signifiait que dans certains cas, cela provoquait en fait une baisse des performances.

"Il y avait un comportement codé en dur dans le noyau Linux du côté AMD, où si un cœur se met en veille, il invalide son cache, car au moment où il se réveille, le cache peut ne plus être valide", a déclaré Griffais. "Il s'avère que lorsque vous avez deux threads sur le même noyau, qu'un thread travaille toujours sur quelque chose et que le deuxième thread SMT se met en veille, il jette son cache en utilisant la même logique. Ainsi, le thread en cours d'exécution perd soudainement son cache L3. En termes de CPU, c'est vraiment mauvais. Il doit en quelque sorte tout récupérer de la mémoire – beaucoup de latence, essentiellement une « bulle » en informatique. Et votre frametime va à la merde. C'est donc ce qui se passait.

AMD a trouvé et résolu le problème avant même que Valve ne l'identifie. En fait, c'est ainsi que les développeurs de SteamOS ont compris ce qui se passait. Avec la mise à jour du noyau, ils pourront enfin le déployer auprès des utilisateurs.

Le problème est principalement apparu dans les jeux plus anciens et a affecté les émulateurs qui n'étaient pas conçus pour le multithreading moderne ; Si vous avez constaté des bégaiements importants ou des fréquences d'images étrangement faibles sur d'anciens jeux, SMT en était probablement la cause. Selon ce que vous jouez sur le Deck, vous ne remarquerez peut-être même pas de changement.

Certains propriétaires de Steam Deck ont ​​cependant remarqué le problème et ont commencé à utiliser un plugin appelé PowerTools pour désactiver SMT. Griffais a mentionné que des appels avaient été lancés pour que Valve intègre cette fonctionnalité dans SteamOS, mais ce n'était pas la voie qu'ils voulaient suivre.

"Nous devions corriger le bug qui oblige les gens à gérer cela au lieu d'ajouter un paramètre extrêmement contre-intuitif que les gens ne devraient pas avoir à désactiver", a-t-il déclaré. "C'est censé améliorer les performances à tous les niveaux. Nous voulions donc examiner la véritable cause profonde du problème, plutôt que d'ajouter des options qui seraient peut-être contre-intuitives et difficiles à utiliser pour les gens, surtout s'il existe déjà un mod - laissez les gens fais ça en attendant."

PARTAGER