SWE-fficienza: I Modelli Linguistici Possono Ottimizzare Repository Realistici su Carichi di Lavoro Reali?
SWE-fficiency: Can Language Models Optimize Real-World Repositories on Real Workloads?
November 8, 2025
Autori: Jeffrey Jian Ma, Milad Hashemi, Amir Yazdanbakhsh, Kevin Swersky, Ofir Press, Enhui Li, Vijay Janapa Reddi, Parthasarathy Ranganathan
cs.AI
Abstract
L'ottimizzazione delle prestazioni di repository software su larga scala richiede competenze nel ragionamento sul codice e nell'ingegneria del software (SWE) per ridurre il tempo di esecuzione preservando la correttezza del programma. Tuttavia, la maggior parte dei benchmark enfatizza *cosa* correggere piuttosto che *come* correggere il codice. Introduciamo SWE-fficiency, un benchmark per valutare l'ottimizzazione delle prestazioni a livello di repository su carichi di lavoro reali. La nostra suite contiene 498 task relativi a nove repository ampiamente utilizzati nell'ambito della data science, del machine learning e dell'HPC (ad es., numpy, pandas, scipy): dato un codebase completo e un carico di lavoro lento, un agente deve investigare la semantica del codice, localizzare i colli di bottiglia e i test rilevanti, e produrre una patch che eguagli o superi il miglioramento di velocità ottenuto da un esperto, superando gli stessi test unitari. Per abilitare questa valutazione sul *come* correggere, la nostra pipeline automatizzata raccoglie pull request da GitHub relative a modifiche per il miglioramento delle prestazioni, combinando filtraggio per parole chiave, analisi statica, strumenti di coverage e validazione dell'esecuzione per confermare sia i benchmark di miglioramento degli esperti che identificare i test unitari rilevanti del repository. La valutazione empirica degli agenti più all'avanguardia rivela una significativa sottoperformance. In media, gli agenti raggiungono meno di 0,15x il miglioramento di velocità degli esperti: gli agenti incontrano difficoltà nella localizzazione delle opportunità di ottimizzazione, nel ragionamento sull'esecuzione attraverso le funzioni e nel mantenere la correttezza nelle modifiche proposte. Rilasciamo il benchmark e la pipeline dati associata per facilitare la ricerca sull'ingegneria delle prestazioni automatizzata e sul ragionamento software a lungo termine.
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.