Amélioration des performances du code assembleur grâce aux grands modèles de langage via l'apprentissage par renforcement
Improving Assembly Code Performance with Large Language Models via Reinforcement Learning
May 16, 2025
Auteurs: Anjiang Wei, Tarun Suresh, Huanmi Tan, Yinglun Xu, Gagandeep Singh, Ke Wang, Alex Aiken
cs.AI
Résumé
Les grands modèles de langage (LLMs) ont démontré des performances solides dans un large éventail de tâches de programmation, mais leur potentiel pour l'optimisation de code reste sous-exploré. Ce travail étudie si les LLMs peuvent optimiser les performances du code assembleur, où un contrôle fin de l'exécution permet des améliorations difficiles à exprimer dans les langages de haut niveau. Nous présentons un cadre d'apprentissage par renforcement qui entraîne les LLMs en utilisant l'Optimisation de Politique Proximale (PPO), guidé par une fonction de récompense qui prend en compte à la fois la correction fonctionnelle, validée par des cas de test, et les performances d'exécution par rapport au compilateur industriel de référence gcc -O3. Pour soutenir cette étude, nous introduisons un benchmark de 8 072 programmes réels. Notre modèle, Qwen2.5-Coder-7B-PPO, atteint un taux de réussite aux tests de 96,0 % et une accélération moyenne de 1,47x par rapport à la base de référence gcc -O3, surpassant les 20 autres modèles évalués, y compris Claude-3.7-sonnet. Ces résultats indiquent que l'apprentissage par renforcement peut libérer le potentiel des LLMs pour servir d'optimiseurs efficaces des performances du code assembleur.
English
Large language models (LLMs) have demonstrated strong performance across a
wide range of programming tasks, yet their potential for code optimization
remains underexplored. This work investigates whether LLMs can optimize the
performance of assembly code, where fine-grained control over execution enables
improvements that are difficult to express in high-level languages. We present
a reinforcement learning framework that trains LLMs using Proximal Policy
Optimization (PPO), guided by a reward function that considers both functional
correctness, validated through test cases, and execution performance relative
to the industry-standard compiler gcc -O3. To support this study, we introduce
a benchmark of 8,072 real-world programs. Our model, Qwen2.5-Coder-7B-PPO,
achieves 96.0% test pass rates and an average speedup of 1.47x over the gcc -O3
baseline, outperforming all 20 other models evaluated, including
Claude-3.7-sonnet. These results indicate that reinforcement learning can
unlock the potential of LLMs to serve as effective optimizers for assembly code
performance.Summary
AI-Generated Summary