Pendant que Qualcomm lance ses puces pour PC, que AMD revient sur le devant de la scène, que Samsung est devenu le champion des semi-conducteurs et que Intel veut investir le marché des cartes graphiques, un nom incongru pointe dans le monde des processeurs : celui de Microsoft. Le très technique site anglais The Register met en effet au jour le projet E2 de Microsoft, une puce sur laquelle le géant du logiciel travaille depuis plus de 8 ans. La nouvelle du jour étant que Microsoft a compilé une version aux petits oignons de son système d’exploitation Windows 10, preuve que la puce est opérationnelle.
Si le projet est important c’est que Microsoft ne s’est pas contenté de développer une puce ARM maison (comme dans nos téléphones) ou un clone de x86 (les processeur Intel et AMD classiques de nos ordinateurs). L’américain a réinventé la roue et a donc développé un nouveau jeu d’instructions baptisé EDGE (aucun lien avec le navigateur), inaugurant ainsi une toute nouvelle plateforme matérielle.
Simplifier et accélérer les calculs
En (très, très) gros, les instructions EDGE changent la façon de fonctionner du processeur. En temps normal, ce dernier trie les instructions selon leur type (entiers, virgules flottantes, accès mémoire), mais cette méthode génère des ralentissements fréquents – attentes de résultats d’une ligne, queues de travail vides pendant qu’une autre est pleine, etc. Pour éviter ce gâchis de ressources, les instructions EDGE coupent les programmes en petits blocs très simples, des blocs que The Register qualifie « d’atomes », des briques primordiales des programmes à exécuter.
Ces « atomes » de codes sont plus faciles à « digérer » que les instructions complexes classiques (que l’on pourrait comparer à des molécules) et cette simplification touche aussi les unités qui les gèrent : quand un processeur ARM classique (Cortex-A76 dans l’exemple détaillé par nos confrères) dispose de 8 lignes de calcul (quatre pour les entiers, deux pour les virgules flottantes et deux pour les accès mémoire), le prototype le plus avancé de la puce de Microsoft, le E2 R1 serait équipé de 32 unités d’exécution « out-of-order ». Une conception « Super RISC » qui ambitionne de dépasser les architectures existantes en termes de rapidité d’exécution.
De la puce virtuelle au produit réel : Qualcomm aux commandes
A quoi ressemble la puce de Microsoft ? A rien. Pour l’heure, selon The Register, le processeur est uniquement virtuel : une version R0 à double cœur cadencée à 50 MHz existe sous forme de puce FPGA. Les processeurs FPGA sont des puces programmables capables d’émuler une puce virtuelle pour reproduire son fonctionnement exact. Mais non seulement ces puces sont chères, mais en plus elles ne peuvent fonctionner aussi rapidement qu’une vraie puce physique.
Pour évaluer correctement sa nouvelle puce, Microsoft a donc fait appel à son compatriote Qualcomm – avec lequel il travaille main dans la main dans le portage de Windows 10 sur ARM. Le géant de la conception des puces pour terminaux mobiles travaille sur la conception d’une vraie puce physique. Baptisée R1, elle ne serait pas cadencée à 50 MHz comme la R0 mais à 2.0 GHz et serait produite par le biais d’un procédé 10 nm, soit comme la puce ARM la plus haut de gamme de Qualcomm, le SnapDragon 845.
Une fois la puce réellement produite, Microsoft pourra évaluer la puissance réelle de son architecture… si les programmes sont là ! Et pour se faire, le géant logiciel semble avoir assuré ses arrières pour faire décoller son architecture. C’est à dire séduire les développeurs.
Les outils de développement sont prêts
Aaron Smith demonstrates Linux and Windows running on an EDGE architecture. #isca18 pic.twitter.com/65DuhdhTgQ
— SIGARCH (@sigarch) June 6, 2018
Encore au stade de projet de laboratoire, ce développement arrive à un nouveau tournant puisque Microsoft a récemment annoncé la compilation de son système d’exploitation Windows 10. Windows 10, mais pas seulement : sont aussi de la partie une version maison de GNU/Linux, le système d’exploitation temps réel RTOS (présent dans les systèmes embarqués, les appareils industriels, etc.) ou encore des outils importants pour les développeurs tels que Busybox, les compilateurs C/C++, .NET, etc.
Une foultitude d’outils dont la mission est de rendre transparent – comprendre « sans efforts » ! – le développement d’applications sur son processeur E2. La promesse étant que les codeurs n’ont pas à reprogrammer leurs applications mais simplement à les recompiler pour qu’elles puissent fonctionner automatiquement. Microsoft dispose d’une expérience récente de la compilation multi-architecture avec l’implémentation dans ses outils de la prise en charge des puces ARM de Qualcomm en plus des traditionnelles puces x86 d’Intel et AMD.
Verra-t-on sortir un jour des versions commerciales des puces E2 de Microsoft ? Si oui, dans quels produits ? Pour quelles applications ? L’architecture E2 est-elle vraiment l’avenir des microprocesseurs ? Autant de questions qui restent pour l’heure sans réponse : E2 et son jeu d’instructions EDGE sont un projet de développement de la très secrète unité de Microsoft Research et on en est pour l’heure qu’au stade la validation du concept.
Mais si l’architecture fait ses preuves, les technologies – et le marché – de l’informatique pourraient bien muter en profondeur.
🔴 Pour ne manquer aucune actualité de 01net, suivez-nous sur Google Actualités et WhatsApp.