Avec ses Snapdragon X, Qualcomm a officiellement relancé les efforts pour pousser le PC Arm sur le marché et concurrencer le statu quo avec Intel et AMD. En collaboration, naturellement, avec Microsoft, l’aspect logiciel est plus que crucial pour le bon fonctionnement de cette association qui n’en est pas à son premier essai. N’oublions pas que l’ambition de Qualcomm est de capter 50 % du marché du PC en 5 ans, rien que ça ! L’architecture d’un Snapdragon étant bien différente de celle des Intel Core et Ryzen habituellement rencontré dans les PC, un bon nombre de choses doivent être adaptées, à commencer par Windows et plus spécifiquement, Windows 11.
Le fonctionnement des applications x86 64-bit avec un SoC Arm est assuré sous Windows 11 par l’émulateur Prism. Avec la nouvelle version Windows 11 Build 27744 publiée par Microsoft pour les testeurs faisant partie du "Canary Channel", l’émulateur s’améliore encore. Par exemple, Prism va désormais pouvoir exploiter davantage de fonctionnalités du processeur, notamment AVX, AVX2, FMA et XSAVE. Autrement dit, plus d’apps x64 vont pouvoir être lancées sur un PC Arm ! Techniquement, Windows 11 24H2 permet déjà d’en lancer quelques-unes, mais les capacités de l’émulateur sont encore limitées. Par conséquent, même avec l’émulation, certaines applications x64 et certains jeux ne sont pas encore fonctionnels. Attention, cette évolution ne bénéficie qu’aux programmes 64-bit, mais pas aux applications 32-bit ou hybrides avec des composants 32-bit. De toute façon, la plupart de ces jeux d’instructions et extensions, bien que techniquement compatible 32-bit, sont généralement mieux optimisées et pleinement utilisées dans un environnement 64-bit.
C’est l’avancée la plus notable de cette version pour l’habilité de Windows 11 avec Arm. D’autres petits changements liés à l’interface (notamment pour améliorer le mode sombre) et corrections de bugs ont également été introduits par Microsoft. En voici un extrait :
- There’s a new detach virtual hard disk (VHD/VHDx) button under System > Storage > Disks & Volumes.
- A black screen bug caused by an older Nvidia GPU has been fixed.
- A bug where Emoji Panel and Clipboard History do not open in certain areas of Windows has been fixed.
- A bug affecting the performance of Windows Sandbox has been fixed.
- A bug that causes a 60 Hz dynamic refresh rate lock has been fixed.
Rappelons que pour l’instant, tout ceci n’est que disponible aux testeurs du "Canary Channel". Pour y accéder, il faut rejoindre le programme Windows Insider, mais attention, cette transition est déconseillée pour une machine du quotidien, en raison de la présence de bugs pouvant être importants. Le fait que des nouveautés sont testées par les Insider ne signifie pas qu’elles seront toutes systématiquement distribuées dans la branche stable de l’OS. Toutefois, logiquement, les avancées les plus importantes, telles que l’évolution de l’émulateur Prism dans le cas présent, devraient tôt ou tard être accessibles à tout le monde dans Windows 11.
L’offensive Arm sur PC portera-t-elle ses fruits cette fois-ci ? Difficile à dire, même si ça semble relativement bien parti. Et puis il suffirait que d’autres acteurs majeurs tels que Valve et NVIDIA y contribuent chacun à leur manière (Valve avec une version Arm de Proton et NVIDIA avec des CPU Arm) pour encore faire avancer, potentiellement considérablement, les choses ! (Source : Windows Latest)
en parlant d'avx2 les fpu du cou des elites x sont 128 bits il peuvent fusionner pour faire du 256 bits mais ça plombe un peu les perf
C est surtout que Qualcomm a une exclu temporaire sur windows arm
Sinon mediatek ou NVIDIA serait déjà sur le front
Ça bougera en 2025 vu que l exclu se termine fin 2024
Et nul doute que notamment avec NVIDIA ça va bouger au niveau de Microsoft prism
Ou mm si arm taff lui aussi avec Microsoft sur prism
Bonjour,
" Attention, cette évolution ne bénéficie qu’aux programmes 64-bit, mais pas aux applications 32-bit ou hybrides avec des composants 32-bit."
Il serait intéressant d'en connaitre, même grossièrement, la répartition.
Je ne sais pas si ma vision est biaisée, je suis persuadé que le nombre d'applications "hybrides" (comme vous les nommées à juste titre) est la grosse part de la logithèque (et plus particulièrement de la ludothèque) sur Windows ...
En effet, les jeux sont rarement compilés en un seul et unique binaire. De plus, il s'agit le plus souvent de plusieurs exécutions en parallèles fonctionnant en moteurs , collecteurs, ordonnanceurs, ...
Certains codés pour un adressage 64b et d'autre 32b (voir encore, pour certains, en 16b ... coucou Bethesda 😏 !)
Concernant Proton sur Arm, il ne faut pas oublié la définition de Proton :
"Proton est un logiciel gratuit et open-source qui permet aux logiciels conçus pour Microsoft Windows de s'exécuter sur des systèmes d'exploitation basés sur Linux."
"Proton is a tool for use with the Steam client which allows games which are exclusive to Windows to run on the Linux operating system. It uses Wine to facilitate this."
=> https://github.com/ValveSoftware/Proton
Il sera donc question d'émuler un environnement d'exécution Windows (DLLs, zones d'exécution, directx, ...) pour un binaire Windows.
=> Il n'est pas question d'une émulation x86 sur ARM.
C'est certainement (à confirmer) une volonté de permettre une exécution des binaires ARM pour Windows sur ARM Distribution Linux.
=> "Faire tourner les jeux ARM pour Windows."
Bel article.
Bonne journée.
Plus sur la scène triple A, car les versions 32-bit de Windows 11 n'existent tout bonnement pas (et étaient très rares sur Windows 10). Il y a quelques années, on voyait déjà apparaître des mentions "64-bit seulement" pour les configurations recommandées, ce qui est logique quand le jeu demande plus de 3,5 Gio de RAM (limite 32-bit). Cela fait donc déjà une paire d'année que les gros titres sont en 64-bit uniquement (et, par conséquent, une partie des moteurs 3D).
Je serai surpris que Starfield prend en charge Windows 10 32-bit, et c'est totalement impossible de le faire mouliner en 16-bits pour le coup (ce qui ne veut pas dire que le moteur est optimisé !)
Ici Proton est pris comme une marque plus que le nom exacte du logiciel, mais tu as raison. Néanmoins, tout part d'une fuite non-officielle, sur laquelle pas grand-chose de technique ne ressort !
Merci pour les précisions.
Cependant, attention : la question de l'adressage 64b n'est pas si simple.
C'est pas une question d'OS, mais du code formant les différentes parties des moteurs dans les jeux. Il n'y a pas que le graphique, il y a un grand nombre de moteurs qui tournent en parallèle et qui ont des utilisations bien précises exemple : Havoc pour la gestion de la physique (les interactions physiques entre des objets 3D).
Et Starfield semble bien embarquer des vieux bout de codes 16bit !
Exemple :
https://preview.redd.it/unsupported-16-bit-application-v0-w49bm48lhk6c1.png?width=1186&format=png&auto=webp&s=353cd09d18bffc9f6bd32d789d6a29cfcf176975
Bref c'est pas si simple, le sujet est assez nébuleux et complexe.
L'adressage 64 bit ou 32 bits est complètement une question d'OS, car c'est lui qui gère l'allocation de la mémoire vive. Impossible de lancer un binaire 16 ou 32 bits si l'OS n'a pas de mode de compatibilité (et le message d'erreur montre visiblement que Starfield a quelque part un binaire 16-bit (je ne peux pas me prononcer plus, ne connaissant pas le jeu, ça peut être également une simple corruption de l'en-tête des données indiquant si l'application est 16, 32 ou 64 bit [si c'était au niveau du code en tant que tel, on aurait un crash, pas un message d'erreur de Windows]).
En revanche, la précision de calcul du moteur 3D peut être en 16, 32, 64 ou même 128 bit indépendamment de l'espace d'adressage, quitte à l'émuler en software si le CPU ne prend pas cela en charge nativement.
"En revanche, la précision de calcul du moteur 3D peut être en 16, 32, 64 ou même 128 bit indépendamment de l'espace d'adressage, quitte à l'émuler en software si le CPU ne prend pas cela en charge nativement."
C'est exactement ce dont je faisais référence.
D'ou le "c'est pas une question d'OS".
Mais je reconnais la maladresse de la formulation. Il manque un "que" pour apporter la nuance :
"Ce n'est pas qu'une question d'OS"
Merci.
Ma faute, je n'avais pas compris la réponse alors :). Je me permets de jouer l'avocat du diable dans ce cas : on peut avoir du code en précision 16-bit et vouloir le garder. Les raisons classiques :
En tout cas, l'erreur de Starfield ne provient pas de calcul 16-bit mal codés : les CPU sont (encore) rétro-compatibles, il n'y a pas de raison de voir un tel message, encore moins au démarrage du soft :).