Le projet GNU a annoncé que sa version 12.1 GNU Compiler Collection (GCC) prend désormais en charge la microarchitecture propriétaire LoongArch de Loongson. L’ajout de la prise en charge de LoongArch à un ensemble populaire de compilateurs permettra aux développeurs de logiciels de mieux gérer les systèmes basés sur les derniers processeurs de Loongson.
« La prise en charge du jeu d’instructions d’architecture LoongArch a été ajoutée », note de version pour le nouveau GCC lu. « Le nom de code CPU Loongson LA464 et le nom de code CPU générique LoongArch 64 bits loongarch64 sont pris en charge via les options -march= et -mtune= (identifiants GCC entre parenthèses). »
Il n’est pas clair si la nouvelle collection de compilateurs prend en charge les ~ 2 000 nouvelles instructions introduites par l’architecture LoongArch, mais j’espère qu’elle prend en charge celles qui apportent les améliorations de performances les plus significatives.
Pendant de nombreuses années, les processeurs de Loongson ont utilisé divers types d’architecture LoongISA de son développeur, qui à son tour était un sous-ensemble personnalisé de l’architecture MIPS64, qui a été conçue pour diverses applications, y compris les PC généraux ainsi que le calcul haute performance. Cela avait beaucoup de sens pour Loongson car cela permettait à l’entreprise de maintenir la compatibilité avec les programmes conçus pour MIPS64 et d’introduire ses propres extensions pour améliorer les performances de programmes spécifiques. Mais peu importe à quel point MIPS64 était bon, c’est une architecture plus ancienne et Loongson avait besoin de quelque chose de nouveau.
L’année dernière, Loongson a finalement présenté ses processeurs 3A5000 et 3C5000 basés sur sa propre architecture de jeu d’instructions LoongArch, qui maintient la compatibilité avec MIPS, mais dispose de 2 000 instructions propriétaires, d’instructions d’extension de conversion binaire (LBT), d’instructions d’extension de traitement vectoriel (LSX), de traitement vectoriel avancé. instructions d’extension (LASX) et instructions d’extension de virtualisation (LVZ). La première tentative d’activation des nouveaux processeurs sous Linux n’a pas été un franc succès car les puces utilisaient largement le code MIPS, mais maintenant que GCC 12.1 prend enfin en charge LoongArch, cette situation pourrait changer.
Les processeurs compétitifs sont cruciaux pour la Chine, qui ne peut pas accéder au matériel HPC développé aux États-Unis. Pour l’instant, les processeurs de Loongson sont principalement destinés aux machines clientes et aux serveurs, mais une fois que LoongArch obtient le support approprié du logiciel (et cela inclut les compilateurs populaires en premier lieu), il sera certainement judicieux d’élargir la liste des applications adressées par ces processeurs.