Feedback generato dal compilatore per modelli linguistici su larga scala
Compiler generated feedback for Large Language Models
March 18, 2024
Autori: Dejan Grubisic, Chris Cummins, Volker Seeker, Hugh Leather
cs.AI
Abstract
Introduciamo un nuovo paradigma nell'ottimizzazione dei compilatori basato su Modelli Linguistici di Grande Dimensione (LLM) con feedback del compilatore per ottimizzare le dimensioni del codice dell'assembly LLVM. Il modello prende come input un LLVM IR non ottimizzato e produce un IR ottimizzato, i migliori passaggi di ottimizzazione e i conteggi delle istruzioni sia per il IR non ottimizzato che per quello ottimizzato. Successivamente, compiliamo l'input con i passaggi di ottimizzazione generati e valutiamo se il conteggio delle istruzioni previsto è corretto, se il IR generato è compilabile e se corrisponde al codice compilato. Forniamo questo feedback al LLM e gli diamo un'altra opportunità di ottimizzare il codice. Questo approccio aggiunge un miglioramento aggiuntivo dello 0,53% rispetto a -Oz rispetto al modello originale. Nonostante l'aggiunta di ulteriori informazioni tramite feedback possa sembrare intuitiva, semplici tecniche di campionamento raggiungono prestazioni molto più elevate con 10 o più campioni.
English
We introduce a novel paradigm in compiler optimization powered by Large
Language Models with compiler feedback to optimize the code size of LLVM
assembly. The model takes unoptimized LLVM IR as input and produces optimized
IR, the best optimization passes, and instruction counts of both unoptimized
and optimized IRs. Then we compile the input with generated optimization passes
and evaluate if the predicted instruction count is correct, generated IR is
compilable, and corresponds to compiled code. We provide this feedback back to
LLM and give it another chance to optimize code. This approach adds an extra
0.53% improvement over -Oz to the original model. Even though, adding more
information with feedback seems intuitive, simple sampling techniques achieve
much higher performance given 10 or more samples.