SWE-fficiency : Les modèles de langage peuvent-ils optimiser des référentiels réels sur des charges de travail réelles ?
SWE-fficiency: Can Language Models Optimize Real-World Repositories on Real Workloads?
November 8, 2025
papers.authors: Jeffrey Jian Ma, Milad Hashemi, Amir Yazdanbakhsh, Kevin Swersky, Ofir Press, Enhui Li, Vijay Janapa Reddi, Parthasarathy Ranganathan
cs.AI
papers.abstract
L'optimisation des performances des dépôts logiciels à grande échelle nécessite une expertise en raisonnement sur le code et en génie logiciel (SWE) pour réduire le temps d'exécution tout en préservant l'exactitude des programmes. Cependant, la plupart des benchmarks mettent l'accent sur ce qu'il faut corriger plutôt que sur la manière de corriger le code. Nous présentons SWE-fficiency, un benchmark pour évaluer l'optimisation des performances au niveau du dépôt sur des charges de travail réelles. Notre suite contient 498 tâches couvrant neuf dépôts largement utilisés en science des données, apprentissage automatique et calcul haute performance (par exemple, numpy, pandas, scipy) : étant donné une base de code complète et une charge de travail lente, un agent doit étudier la sémantique du code, localiser les goulots d'étranglement et les tests pertinents, et produire un correctif qui atteint ou dépasse l'accélération experte tout en passant les mêmes tests unitaires. Pour permettre cette évaluation du "comment corriger", notre pipeline automatisé extrait les demandes de pull GitHub pour les modifications d'amélioration des performances, combinant filtrage par mots-clés, analyse statique, outils de couverture et validation d'exécution pour confirmer à la fois les bases de référence d'accélération experte et identifier les tests unitaires pertinents du dépôt. L'évaluation empirique des agents les plus avancés révèle une sous-performance significative. En moyenne, les agents atteignent moins de 0,15 fois l'accélération experte : les agents éprouvent des difficultés à localiser les opportunités d'optimisation, à raisonner sur l'exécution à travers les fonctions et à maintenir l'exactitude des modifications proposées. Nous publions le benchmark et le pipeline de données associé pour faciliter la recherche sur l'ingénierie des performances automatisée et le raisonnement logiciel à long terme.
English
Optimizing the performance of large-scale software repositories demands expertise in code reasoning and software engineering (SWE) to reduce runtime while preserving program correctness. However, most benchmarks emphasize what to fix rather than how to fix code. We introduce SWE-fficiency, a benchmark for evaluating repository-level performance optimization on real workloads. Our suite contains 498 tasks across nine widely used data-science, machine-learning, and HPC repositories (e.g., numpy, pandas, scipy): given a complete codebase and a slow workload, an agent must investigate code semantics, localize bottlenecks and relevant tests, and produce a patch that matches or exceeds expert speedup while passing the same unit tests. To enable this how-to-fix evaluation, our automated pipeline scrapes GitHub pull requests for performance-improving edits, combining keyword filtering, static analysis, coverage tooling, and execution validation to both confirm expert speedup baselines and identify relevant repository unit tests. Empirical evaluation of state-of-the-art agents reveals significant underperformance. On average, agents achieve less than 0.15x the expert speedup: agents struggle in localizing optimization opportunities, reasoning about execution across functions, and maintaining correctness in proposed edits. We release the benchmark and accompanying data pipeline to facilitate research on automated performance engineering and long-horizon software reasoning.