Attendue en 2019, la prochaine plateforme processeur ARM, la Cortex-A76, met l’accès sur les économies d’énergie mais promet néanmoins d’offrir plus de performances, notamment sur le marché des PC ultraportables. Basé sur la technologie DynamIQ, ce SoC Cortex-A76, qui repose sur l’a Armv8-A (Harvard), offrirait, selon ARM, un gain de performance de 35 % (un cœur A76 de 7 nm par rapport à un A75 en 10 nm) ainsi qu'une efficacité énergétique améliorée de 40% par rapport à la génération précédente. Tout dépend bien sûr du type de tâches, il est donc préférable d’attendre la sortie des puces avec de véritables tests pour confirmer ces affirmations. Dotée d’un cœur 64 bits (A64 avec support d’A32 de T32 pour les coeurs 32 bits complémentaires), cette puce combine en fait un CPU Cortex-A76, un GPU Mali-G76 et un VPU Mali-V76. Rappelons que ce dernier est réservé à des tâches spécifiques comme l’accélération des algorithmes de traitement et de reconnaissance visuelle (visage, objets, voitures et arbres pour la conduite autonome...).
Avec les PC ultraportables, le marché de l’intelligence artificielle est également dans la ligne de mire d’ARM qui assure que sa puce Cortex-A76 multiplie par 4 les performances de calcul avec des algorithmes d’IA. « Nous pensons que nous avons pris un virage par rapport à la courbe de performance globale », a souligné Rene Haas, président du IP Products Group (IPG) chez ARM, lors d'une conférence de presse jeudi à San Francisco. Il a ainsi promis des « performances au niveau d’un PC portable » et même déclaré que le Cortex-A76 pourrait concurrencer les modèles haut de gamme Core i7 d'Intel.
Les arguements techniques
Parmi les éléments techniques avancés pour corroborer ses dires, le fournisseur avance :
- Chaque A76 dispose de 128 Ko de cache L1 (mémoire cache d’instructions à quatre voies de 64 Ko avec latence d’utilisation de quatre cycles, 64 Ko pour les données), 256 ou 512 Ko de cache N2 à cinq entrées et 1280 entrées et partage jusqu’à 4 Mo de L3.
- La prédiction de branche découplée et l'instruction fetch : Le frontal Cortex-A76 est capable de récupérer 4 à 8 instructions par cycle, en utilisant des caches de cibles de branches multi-niveaux et un prédicteur indirect hybride pour maintenir un débit maximum. Le prédicteur de branche extrait 32 octets de la mémoire par cycle, en avance sur l’extracteur d’instructions qui consomme 16 octets par cycle. Cela permet au prédicteur d’alimenter les caches du cœur bien avant le temps d’exécution réel, et de minimiser les bulles dans le pipeline pendant lesquelles le cœur ne peut rien faire d’utile. Et pour minimiser l’exploitation des failles liées à Spectre, le noyau accorde plus d’attention au contexte dans lequel le code est exécuté pour empêcher le logiciel d’espionner d’autres logiciels via ces vulnérabilités.
- Une architecture plus vaste : Le Cortex-A76 est le premier noyau a intégré 4 voies pour le décodage des données, ce qui augmente la capacité maximale d'instruction par cycle. Jusqu'à 8 opérations par cycle peuvent ensuite être réparties sur le noyau, ce qui permet d'obtenir une fenêtre d'instructions optimisée en termes de répartition et de puissance.
- Plus d'entier et d'exécution vectorielle : Les unités de nombres entiers quadruple sont intégrées dans le noyau. De plus, le Cortex-A76 prend en charge les unités vectorielles 16B (128 bits) et les unités à virgule flottante, soit le double de la génération CPU ARM précédente.
- Système de mémoire amélioré : La hiérarchie complète du cache est co-optimisée pour la latence et la bande passante, avec une pré-extraction de 4ème génération, et un parallélisme plus profond au niveau de la mémoire.
Dans l’ensemble, les ingénieurs d’Arm ont amélioré une centaine de petites choses qui permettent au final de gagner un petit pourcentage ici, et un autre ailleurs en limitant les gaspillages des cycles CPU, en réduisant la latence, en augmentant la bande passante et en accélérant le chargement du code.
Plus de noyaux pour le GPU Mali-G76
En complément, ARM dévoile sa puce graphique Mali-G76 qui apporte deux fois plus de voies d’exécution que la précédente G72, effectuant huit opérations mathématiques vectorielles en virgule flottante (32 bits) tous les trois cycles d’horloge. Le G76 a donc huit voies par moteur de traitement, trois moteurs par cœur, 20 noyaux par GPU, soit 480 voies au total contre 384 pour le G72. Associé à ce GPU, on trouve également le VPU Mali-V76 qui décode la vidéo 8K à 60 images par seconde. Un détail important quand on sait qu’ARM est passé sous pavillon japonais depuis le rachat de l’entreprise britannique par Softbank et l’organisation des prochaines Jeux Olympiques d’été à Tokyo en 2020. Cette manifestation a toujours été une vitrine technologique pour le pays, on pourra donc compter sur des nombreux usages avec une combinaison de la 5G et du streaming 8K.