Steam a de grands projets pour améliorer l'expérience de jeu sous Linux. La plateforme de Valve a annoncé en début de semaine le lancement de la première build de Proton 4.11. À la clé, de belles améliorations pour les joueurs opérant sur Linux.
Basée sur WINE 4.11, qui permet le fonctionnement de plusieurs milliers de jeux Windows sous Linux, la nouvelle mouture de Proton embarque - outre la correction de plusieurs bugs - une implémentation de Direct3D 9, basée sur l'API Vulkan. Plus intéressant encore, cette nouveauté permettrait de réduire de manière notable la charge CPU sur les titres multi-threadés... Tout du moins à une condition près : les développeurs du noyau Linux devront pour ce faire appliquer au kernel les changements proposés par Steam.
-10% d'usage CPU avec la prochaine version de Proton ?
Dans la note publiée ce 30 juillet, Steam explique avoir réalisé des tests sur une machine haut de gamme. Sous Shadow of the Tomb Raider, la différence de charge CPU était alors de plus ou moins 10% entre la version actuelle de Proton et celle incluant les améliorations en lien avec le multi-threading. Les équipes de Steam assurent que ces observations sont réplicables sur des machines moins performantes, et donc plus proches des configurations utilisées par la plupart des joueurs.La nouvelle build dévoilée par Steam ajoute aussi ce que Tom's Hardware décrit comme un « remplacement expérimental » pour esync, une ancienne fonctionnalité de Wine qui pourrait, dans les faits, améliorer les performances en multi-thread pour certains jeux. Cette fonctionnalité est toutefois surveillée de très près par les développeurs de Steam. D'après leur rapport, elle pourrait avoir des conséquences fâcheuses sur le kernel de Linux.
Des changements proposés sur le Kernel Linux pour de meilleures performances
Décidément très actives ces derniers mois, les équipes de Steam ont également suggéré plusieurs changement à apporter au kernel Linux pour de meilleures performances en jeu. Les développeurs de Valve ont par exemple recommandé d'étendre l'appel au système futex() afin d'exposer « des fonctionnalités de noyau additionnelles, nécessaires pour supporter une synchronisation optimale du pool de threads », est-il précisé.Dans sa version 4.11, Proton embarque d'ores et déjà le patch fsync() qui permettra de remplacer esync. L'activation des nouveautés interviendra toutefois lorsque des changements auront été apportés au kernel Linux. En attendant, Steam explique poursuivre ses tests sur les distributions Ubuntu et Arch Linux, et pour l'heure en utilisant des kernels customs permettant de rendre actives les nouveautés évoquées plus haut.
Source : Tom's Hardware