Émulation, upscaling, compatibilité : Microsoft veut amener les joueurs sur les PC Copilot+

Émulation, upscaling, compatibilité : Microsoft veut amener les joueurs sur les PC Copilot+

De « bonnes conditions »

18

Émulation, upscaling, compatibilité : Microsoft veut amener les joueurs sur les PC Copilot+

Dans le sillage du lancement officiel des PC Copilot+, Microsoft veut convaincre que ces machines ne sont pas faites que pour le travail itinérant. Dans un billet, la société fait le point sur les jeux vidéo et les améliorations portées à la mise à jour 24H2 pour les machines Arm. La situation n’est pas sans rappeler celle d’Apple.

Pour Microsoft, les PC Copilot+ ne sont pas un marché de niche. Il s’agit même de l’avenir. Un avenir fait de puces Arm surtout, mais dont l’étiquette pourra s’étendre à d’autres quand les conditions seront remplies (et adoubées). On l’a vu avec AMD, Intel et NVIDIA récemment.

Quand l’entreprise déclare officiellement qu’elle n’avait pas pu faire ce genre de machine durant les vingt dernières années, c’est une claque à Intel. C’est la dernière transition d’Apple qui recommence. Mais Microsoft n’est pas la seule à décider cette fois. Le marché du PC est très différent. Particulièrement hétérogène, il faut arriver à renouveler les habitudes avec de nouveaux produits générant du désir.

Les PC Copilot+ sont ainsi présentés comme des machines à tout faire, puissantes, hautement transportables et taillées pour le futur, grâce au NPU des Snapdragon X Plus et Elite.  Microsoft tente maintenant de faire passer une autre idée : ces PC permettent aussi de jouer dans de bonnes conditions.

Émulation et upscaling maison

Pour convaincre, Microsoft déploie une série d’arguments. D’abord les progrès réalisés sur l’émulation. Le composant concerné se nomme Prism et nous en avons parlé dans notre article sur le lancement officiel des PC Copilot+. Microsoft affirme que les améliorations permettant à Prism d’aborder plus efficacement l’émulation des jeux x86 et x64.

L’éditeur met également en avant son Auto Super Resolution (Auto SR). Cette technologie d’upscaling, présentée le mois dernier, est un concurrent direct de DLSS (NVIDIA), FSR (AMD) et XeSS (Intel). Le principe est le même : étirer une image et la lisser pour simuler une plus grande résolution. Par exemple, prendre une image en 1080p et simuler du 1440p, les opérations étant gérées matériellement par le GPU. Ou, dans le cas présent, le NPU.


Baldur's Gate 3 tourne à 30 fps en 1080p, la configuration précise n'est pas connue

Auto SR supporte en théorie tous les jeux de manière automatique si le matériel est présent. L’image doit être en 720p minimum. Côté API, DirectX 11 et 12 sont pris en charge sur les architectures x86, x64 et Arm64. Aucune autre API graphique (Vulkan notamment) n’est supportée, pas plus que le HDR.

L’objectif, bien sûr, est de cumuler les améliorations sur Prism et l’utilisation d’Auto SR pour fournir une expérience décente. Les deux étant exclusifs aux PC Copilot+, la boucle est bouclée pour Microsoft. Dans ses communications passées, l’éditeur mettait en avant des gains dépassant les 50 % sur le nombre d’images par seconde. C’était notamment le cas sur Borderlands 3 en 1440p, sans et avec Auto SR.

On attend maintenant des comparatifs entre les solutions des différents protagonistes de l’upscaling.

La compilation native, toujours la voie royale

Microsoft ne cherche pas non plus à masquer une vérité élémentaire : les performances les plus élevées seront atteintes avec des jeux compilés nativement pour Windows on Arm. Rien n’empêche en outre de cumuler cette compatibilité avec Auto SR pour aller encore un cran plus loin.

La communication met surtout en avant Prism pour une raison évidente : l’écrasante majorité des jeux ne sont pas compilés nativement pour Arm. Ils seront émulés, avec une chute attendue des performances.

Microsoft affirme cependant, en partenariat avec Qualcomm, avoir testé plus de 1 400 jeux pour la plateforme Windows on Arm. Sur l’ensemble, plus de 1 200 permettraient « une bonne expérience » à 30 fps ou plus, en 1080p. En revanche, la configuration n’est pas donnée, notamment la référence de la puce Qualcomm utilisée. Selon qu’il s’agit d’une Snapdragon X Plus ou l’une des trois variantes Elite, la différence tarifaire peut être importante, les PC Copilot+ n’étant pas spécialement bon marché.

Un site pour vérifier les performances des jeux

Les deux partenaires se sont également associés à Linaro pour publier le site Windows on Arm Ready Software. On peut y chercher un jeu et vérifier les conditions que l’on devrait obtenir. Quatre niveaux sont définis :

  • Perfect (Parfait) : le jeu tourne impeccablement et à au moins 60 fps en 1080p
  • Playable (Jouable) : le jeu tourne à au moins 30 fps en 1080p, avec quelques soucis minimaux
  • Runs (Fonctionne) : le jeu tourne à moins de 30 fps avec des bugs plus sérieux
  • Unplayable (Injouable) : ne fonctionne pas, à cause de l’indisponibilité de la solution antitriche embarquée ou autre

À la différence cependant d’autres sites comme « Is Apple Silicon Ready ? » dédié aux Mac équipés de puces M1/M2/M3, le nouveau venu n’indique pas si le jeu ou l’application est émulé ou compilé nativement.

En faisant quelques tests, on peut voir que World of Warcraft obtient un Perfect, League of Legends est Unplayable, Rocket League est Playable, Civilization IV et V sont Perfect, Baldur’s Gate 3 est Playable, Hollow Knight est Perfect, Satisfactory est Playable, etc. Certains titres, comme Elden Ring ou No Man’s Sky, ou Civilization VI, sont curieusement absents.

On remarque que bon nombre de jeux connus sont en Perfect. Une bonne nouvelle donc, même si – encore une fois – on ne sait pas sur quelle configuration les 60 fps (au moins) ont été obtenues. Dans l’idée de mettre en avant les bonnes performances de ces machines, il est probable que les configurations les plus puissantes étaient prises en référence. Nous avons posé la question à Microsoft et mettrons cette actualité à jour quand nous aurons la réponse.

Un travail avec les logiciels antitriche

De nombreux titres étant protégés par des solutions antitriches, Microsoft indique avoir contacté les entreprises concernées pour préparer le terrain. « Nous avons aidé nos partenaires à accéder à des versions préliminaires, à des guides de développement et à l'expertise de nos équipes d'ingénieurs, alors que de plus en plus de partenaires apportent leurs solutions à Arm », ajoute l’éditeur.

BattlEye, Denuvo Anti-Cheat, et Wellbia XIGNCODE3/UNCHEATER sont donc officiellement compatibles avec Windows on Arm. Chez BattleEye, le PDG Bastian Suter a indiqué qu’une « collaboration étroite avec Qualcomm » avait permis de lever les barrières. Le travail a cependant nécessité « plus d’un an », Microsoft et Qualcomm ayant apparemment dû répondre à certaines exigences de la solution antitriche.

Microsoft, Apple, même combat ?

La situation actuelle de Microsoft rappelle celle d’Apple à plus d’un titre. Les deux tentent de convaincre activement que leur plateforme est idéale pour jouer. Dans les deux cas, on parle d’un SoC Arm, d’API unifiées, de faciliter à porter les jeux, d’un nombre « de plus en plus grand de jeux disponibles ». Tout ce qui est nécessaire pour engranger l’enthousiasme et inviter à grimper dans le train en marche.

Les problématiques sont également similaires, surtout sur le plan matériel. Que l’on parle des puces Apple Silicon ou Snapdragon X (Plus ou Elite), il s’agit de SoC intégrant CPU, GPU et NPU. D'excellentes puces pour de nombreuses tâches du quotidien, mais plus limitées quand il s’agit de se lancer sur des activités aussi gourmandes que les jeux vidéo.

La communication de Microsoft laisse des zones d’ombre, notamment sur le matériel utilisé pour rendre compte des performances. Celle d’Apple n’est guère mieux, mettant par exemple en avant le ray tracing, qui n’est en fait disponible qu’à partir des puces M3. En outre, toutes ces machines ont une mémoire partagée, servant pour les CPU, GPU et NPU. Une mémoire soudée et que l’on ne peut pas étendre si l’on a sous-estimé ses besoins au moment de l’achat. Les PC Copilot+ compensent légèrement en proposant 16 Go de mémoire minimum, mais ce n’est pas idéal pour autant.

En outre, les deux géants souhaitent motiver les studios à compiler nativement leurs titres pour leurs dernières plateformes. Microsoft part bien sûr avec un avantage, puisque la ludothèque Windows est immense. Si la couche d’émulation Prism donne les résultats attendus, la société marquera un point. De son côté, Apple peut vanter la disponibilité de ses API sur des millions d’appareils. En théorie, un titre peut être exploité sur Mac, iPhone, iPad et Apple TV. En pratique, le grand écart du matériel entre tous ces appareils rend la situation complexe.

Il y a des différences, bien sûr. Mais on pourrait résumer la situation ainsi : Microsoft cherche surtout à convaincre les joueurs existants, tandis qu’Apple veut avant tout séduire les développeurs. En l’état, les appareils concernés peuvent permettre de jouer dans des conditions « décentes » (selon les sensibilités de chacun, les jeux recherchés et le budget). Mais il s’agit davantage de débloquer un scénario dont les clients potentiels pouvaient craindre l’absence que d’en faire les supports vidéoludiques idéaux.

Commentaires (18)


Au prix où sont vendus les CoPilot+ PCs, je préfère encore mettre la différence et me paier un PC portable de jeu plus convainquant.
Et ma tour de 4 ans 1/2 (avec une CG plus récente) est très largement suffisante pour me permettre du 120+ FPS en 1440p full détails (rasterisation).

Comme toi, je suis très dubitatif concernant ces PC "copilot+".
Au-dela des problèmes qui sont abordés dans l'article. Je me pose la question sur les très vieux jeux vidéo qui pose déjà problème à faire fonctionner de nos jours. Avec une couche d'émulation en plus, j'ose pas imaginer le bordel. Que cela soit des jeux sous Dosbox ou des jeux des année 90 debut 2000.

Je pense au Tomb Raider original mais il a y'en plein d'autres. Pour les plus connus, ils ont été plus ou moins réparer grâce à la communauté mais cela reste du bricolage. Et plein d'autres jeux n'ont pas eu autant de chances d’être réparer. J'ai peur que cela aggrave les choses et que des bugs nouveaux suivre.
Modifié le 20/06/2024 à 19h07

Historique des modifications :

Posté le 20/06/2024 à 19h07


Au-delàs des problèmes qui sont abordés dans l'article. Je me pose la question sur les très vieux jeux vidéo qui pose déjà problème à faire fonctionner de nos jours. Avec une couche d'émulation en plus, j'ose pas imaginer le bordel. Que cela soit des jeux sous Dosbox ou des jeux des année 90 debut 2000.

Je pense au Tomb Raider original mais il a y'en plein d'autres. Pour les plus connus, ils ont été plus ou moins réparer grâce à la communauté mais cela reste du bricolage. Et plein d'autres jeux n'ont pas eu autant de chances d’être réparer. J'ai peur que cela aggrave les choses et que des bugs nouveaux suivre.

Il est probable qu'à terme si la part de marché des PCs ARM grimpe, alors on verra des Dosbox compilés directement dessus. Ce sera plus compliqué pour les bricolages par contre.

Cependant, compte tenu des prix des CoPilot+, je vois mal comment ils vont se vendre. Fondamentalement ces machines n'ont pas grand intêret au delà de la batterie et du module d'IA. Les usagers lambda resteront sur des machines bien moins chères, les joueurs sur les bêtes habituelles.

C'est peut-être la raison de l'existence de cet article : Microsoft doit enfin réaliser que ces PC vont probablement être un flop, donc il tente de convaincre le groupe d'acheteur le plus enclin à payer le prix de s'y intéresser.

Mais à 1200/1600 € -le groupe de CoPilot+ PCs le moins cher- je trouve des machines de jeux qui seront plus à même de supporter Baldur's Gate 3 monnayant quelques concessions (qualité de l'écran notamment) et quelques réglages. Ne parlons même pas des modèles plus onéreux.
Il y a des projets existant depuis un moment (dosbox on Arm, fex86, ...) capables d'émuler/simuler un x86 sur Arm. Ca fonctionne déjà.
C'est surtout les jeux de la période 2010 et + qui vont poser problème je pense, avec leurs DRM avancés, profonds, les connections à des services web.
Si ça peut te rassurer, le fait que des jeux des années 90 fonctionnaient était déjà du bricolage en 90.
Le problème avec ce changement est qu'il n'y a pas de concurrence avec un deuxième fournisseur de puces. Autant je n'ai jamais aimé l'architecture x86 dont les fondations sont mauvaises, autant je n'apprécie pas Qualcomm.

Bref, j'ai les boules.
Bah si, il y a MediaTek qui va se lancer dans la production de puces ARM. Et je crois qu'au moins AMD et peut-être aussi Intel ont annoncé qui s'y mettraient dans les prochaines années.
Avec ARM on doit tout recompiler pour chaque processeur à la différence d'x86, c'est ça ? J'ai un vague souvenir du coup je demande. Il me semblait que c'est pour ça qu'on n'a pas d'évolutivité ni long support pour les smartphones, mais je me trompe peut-être
Non il me semble que les jeux d'instructions sont communs, mais que c'est plutôt au niveau du hardware que c'est du spécifique

Jos

Non il me semble que les jeux d'instructions sont communs, mais que c'est plutôt au niveau du hardware que c'est du spécifique
j'ai des doutes des instructions communes sur la partie GPU qui est le nerf de la guerre pour le jeux vidéo.
Les drivers Qualcomm coté n'ont jamais été leur fort.
En espérant qu'il est un support aussi long que les fabricants de carte graphique. (gros doutes)

Jos

Non il me semble que les jeux d'instructions sont communs, mais que c'est plutôt au niveau du hardware que c'est du spécifique
Alors en effet les jeux d'instructions semblent communs. J'ai pu creuser un peu avec ce que tu disais et il semble que c'est plutôt qu'il n'y a rien de standardisé en terme d'architecture, donc de drivers, et même de boot process.
Je suis tombé, entre-autres, sur une réponse quora qui était pas mal
C'est cela. À la différence des CPUs x86, chaque fabricant crée son SOC avecv la base ARM tout en intégrant des rajouts propres et propriétaires qui font que l'on est obligé de recompller pour chaque modèle de pus (par exemple, pour un Spaapdragon 835 et une autre compilation pour un Snapdragon 855 et encore une troisième pour un autre SOC Snapdragon ...). Tout pareil pour chaque fabricant.

Le x86 et son pendant AMD64 sont de vrais standards stricts qui imposent une interopérabilité. On compile un code x86-64 et il est censé pouvoir fonctionner aussi bien sur du Intel que de l'AMD, voire du VIA.

Pourtant, l'architecture x86-64 est tout sauf parfaite.

Gilbert_Gosseyn

C'est cela. À la différence des CPUs x86, chaque fabricant crée son SOC avecv la base ARM tout en intégrant des rajouts propres et propriétaires qui font que l'on est obligé de recompller pour chaque modèle de pus (par exemple, pour un Spaapdragon 835 et une autre compilation pour un Snapdragon 855 et encore une troisième pour un autre SOC Snapdragon ...). Tout pareil pour chaque fabricant.

Le x86 et son pendant AMD64 sont de vrais standards stricts qui imposent une interopérabilité. On compile un code x86-64 et il est censé pouvoir fonctionner aussi bien sur du Intel que de l'AMD, voire du VIA.

Pourtant, l'architecture x86-64 est tout sauf parfaite.
Si ce sont des rajouts et non des modifications du jeu de base, ça ne devrait pas poser problème. Il y a aussi plein de rajouts dans x86 qui ont été fait par un constructeur, puis souvent implémenté par les autres ensuite (mais pas toujours), qui font qu'un programme compilé spécifiquement pour un CPU en utilisant ces rajouts ne fonctionnera pas sur tous les CPU x86, par contre un programme compilé pour x86 sans utiliser de rajouts fonctionnera partout.

Pour avoir la réponse, il faut peut-être juste se demander comment est compilé Windows ARM.
Non, les jeux d'instructions de base sont standard. Par contre il peut y avoir des extensions, mais c'est le cas aussi sur x64 (version FPU, version SSE, version AMD machin chose, avec ou sans l'instruction bidule). Dans un seul exe, on peut avoir plusieurs chemin d'exécution différents.

Donc ça ne change rien.

C'est l'OS, et notamment la partie démarrage/communication qui nécessite une recompilation. En fait, sur un PC, les OS vont détecter le matériel sur chaque bus et charger le pilote. Sur un smartphone, la liste de matériel et comment il est connecté est "en dur" dans l'OS.

On pourrait faire des OS Arm (et ça existe, avec Windows et Linux) capable de charger dynamiquement les pilotes - mais les constructeurs ne faisaient pas d'effort particulier pour rester dans une norme. Même si c'est en général le cas, par soucis économique, il n'y a pas de vérification de cette conformité, ou d'effort pour que le chargement dynamique soit possible.

Wosgien

Non, les jeux d'instructions de base sont standard. Par contre il peut y avoir des extensions, mais c'est le cas aussi sur x64 (version FPU, version SSE, version AMD machin chose, avec ou sans l'instruction bidule). Dans un seul exe, on peut avoir plusieurs chemin d'exécution différents.

Donc ça ne change rien.

C'est l'OS, et notamment la partie démarrage/communication qui nécessite une recompilation. En fait, sur un PC, les OS vont détecter le matériel sur chaque bus et charger le pilote. Sur un smartphone, la liste de matériel et comment il est connecté est "en dur" dans l'OS.

On pourrait faire des OS Arm (et ça existe, avec Windows et Linux) capable de charger dynamiquement les pilotes - mais les constructeurs ne faisaient pas d'effort particulier pour rester dans une norme. Même si c'est en général le cas, par soucis économique, il n'y a pas de vérification de cette conformité, ou d'effort pour que le chargement dynamique soit possible.
Il y a un projet pour faire un UEFI pour le pi, par exemple. Mais la plupart des périphériques sont vendus avec un device-tree en dur dans le bootloader. Ce qui complique effectivement grandement la donne pour changer d’os, car ça impose que ce bout-là spécifique soit livré avec. Je n’ai aucune idée de comment ça se passe avec windows. La première question à laquelle je souhaiterai une réponse, c’est est-il possible de changer l’os des ces portables (aka mettre un linux ou un bsd) ? Si la réponse est non, alors c’est poubelle direct, ça ne devrait même pas avoir le droit d’être vendu…
« une bonne expérience » à 30 fps


Euh 30 FPS c'est quand même immonde ! Il faut être honnête.
J'irais pas jusque là (même si ça dépend du type de jeu), mais je ne dirais pas que c'est une bonne expérience non plus.
Hélas la transition à plus ou moyen terme pour le grand public est inévitable. Cf Chromebook et Apple MX.
Ce n'est pas grave, c'est comme ça.
Mais quid des applications et usages pro et semi-pros? Là sera la question.
Fermer