13 points par lemonmint 2024-12-11 | 1 commentaires | Partager sur WhatsApp

Un compilateur assembleur ARM64 qui combine la simplicité du langage Go avec le contrôle bas niveau et de hautes performances.
Il fournit des optimisations spécialisées pour l’architecture ARM, un réglage au niveau matériel, des contrôles de sécurité, des outils de débogage, etc.

  • Il existe de nombreux compilateurs Go et assembleurs ARM, mais peu d’outils exploitent les fonctionnalités propres à ARM.
    • Le second opérande flexible des instructions arithmétiques d’ARM
    • Les capacités d’exécution conditionnelle
    • Les opérations SIMD NEON pour la vectorisation
    • Les instructions de division matérielle et de multiplication-accumulation
  • Avec la domination croissante de l’architecture ARM (séries Apple M, AWS Graviton, appareils mobiles, systèmes embarqués), l’importance des outils d’optimisation spécialisés pour ARM64 augmente.

gARM

  • Compile en utilisant par défaut un GC générationnel.
  • Propose le choix de l’algorithme de GC ou l’option de ne pas utiliser de GC.
  • Prend en charge le calcul haute performance sur serveurs ARM (objectif : multiplier par 5 les performances de Go sur ARM64).
  • Convient aux systèmes mobiles/embarqués multiplateformes où les performances sont essentielles.
  • Convient aux applications cloud exécutées sur des instances ARM.
  • (AST) -> (SSA) -> (IR) -> (Optimizer) -> (Assembly)

1 commentaires

 
bus710 2024-12-12

Je me demande si le débogueur Delve pourra s’y attacher directement.
Même pour passer de x86 à aarch64, ça avait déjà pris un bon moment...