L'apprentissage de représentations numériques efficaces des programmes constitue un prérequis fondamental pour appliquer le machine learning à l'automatisation et à l'amélioration des optimisations de compilateurs. Les paradigmes actuels présentent un dilemme : les représentations statiques, dérivées du code source ou de la représentation intermédiaire, sont efficaces et déterministes mais offrent une vision limitée du comportement du programme lors de transformations complexes, tandis que les représentations dynamiques, basées sur le profilage d'exécution, fournissent des insights profonds sur les goulots d'étranglement mais sont souvent impraticables à grande échelle en raison de leur surcoût prohibitif et de leur non-déterminisme inhérent.

Cette recherche transcende ce compromis en proposant un cadre quasi-dynamique novateur pour la représentation des programmes. L'idée centrale consiste à modéliser la sensibilité d'un programme aux optimisations via l'introduction du Spectre Comportemental des Programmes, une nouvelle représentation générée en sondant la représentation intermédiaire du programme avec un ensemble diversifié de séquences d'optimisation et en quantifiant les changements résultants dans ses caractéristiques statiques. Pour encoder efficacement ce spectre continu et de haute dimension, les auteurs pionnent une approche d'apprentissage compositionnelle utilisant la quantification par produit pour discrétiser les vecteurs de réaction continus en sous-mots structurés.

Un modèle Transformer multi-tâches, nommé PQ-BERT, est ensuite pré-entraîné pour apprendre la grammaire contextuelle profonde de ces codes comportementaux. Des expériences complètes sur deux tâches représentatives d'optimisation de compilateurs - la prédiction de la meilleure passe et la prédiction du bénéfice de -Oz - démontrent que cette méthode surpasse les approches statiques de pointe, validant ainsi l'efficacité de cette représentation comportementale hybride pour les applications pratiques d'optimisation automatisée.