Het verbeteren van de prestaties van assembleercode met grote taalmodellen via reinforcement learning
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
Samenvatting
Grote taalmodellen (LLMs) hebben sterke prestaties getoond in een breed scala aan programmeertaken, maar hun potentieel voor code-optimalisatie blijft onderbelicht. Dit onderzoek onderzoekt of LLMs de prestaties van assemblycode kunnen optimaliseren, waar fijnmazige controle over de uitvoering verbeteringen mogelijk maakt die moeilijk uit te drukken zijn in hogere programmeertalen. We presenteren een reinforcement learning-framework dat LLMs traint met Proximal Policy Optimization (PPO), geleid door een beloningsfunctie die zowel functionele correctheid, gevalideerd via testgevallen, als uitvoeringsprestaties ten opzichte van de industrienorm gcc -O3 in overweging neemt. Om deze studie te ondersteunen, introduceren we een benchmark van 8.072 real-world programma's. Ons model, Qwen2.5-Coder-7B-PPO, behaalt een testslaagpercentage van 96,0% en een gemiddelde snelheidswinst van 1,47x ten opzichte van de gcc -O3-basislijn, en overtreft alle 20 andere geëvalueerde modellen, waaronder Claude-3.7-sonnet. Deze resultaten geven aan dat reinforcement learning het potentieel van LLMs kan ontsluiten om effectieve optimalisatoren te zijn voor de prestaties van assemblycode.
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