Nova: Un compilatore MLIR end-to-end per il deep learning
Nova è un compilatore JIT automatizzato end-to-end che mira a fornire un controllo completo sulla mappatura hardware dei modelli di deep learning. Fonde operazioni attraverso diversi confini, migliora strutture di memoria complesse e ottimizza l'esecuzione a livello di registro. Catturando le esecuzioni eager e integrando sia il forward che il backward pass in un dialetto semantico di valore unificato, Nova facilita estese ottimizzazioni dell'intero grafo. Un Configuratore Analitico viene impiegato per derivare sistematicamente le migliori configurazioni. Questo compilatore è descritto in un articolo su arXiv (ID: 2608.00029), che discute le difficoltà di tradurre operazioni matematiche di alto livello in hardware fisico. Si nota che, mentre i framework tensoriali di alto livello forniscono astrazioni flessibili, i loro modelli di esecuzione eager mancano di una visione completa e di un controllo preciso su hardware e memoria, una lacuna che Nova cerca di colmare, specialmente per il ridimensionamento di modelli di deep learning dove le prestazioni sono strettamente legate all'uso efficiente dell'hardware. L'articolo è stato recentemente sottomesso a arXiv.
Fatti principali
- Nova è un compilatore JIT automatizzato end-to-end per il deep learning.
- Mira a ottenere un controllo assoluto sulla mappatura hardware.
- Fonde operazioni attraverso i confini delle operazioni.
- Ottimizza gerarchie di memoria complesse.
- Ottimizza l'esecuzione fino al livello di registro.
- Cattura le esecuzioni eager e unifica forward e backward pass in un unico dialetto semantico di valore.
- Utilizza un Configuratore Analitico per derivare deterministicamente gli optima.
- L'articolo è disponibile su arXiv con ID 2608.00029.
Entità
Istituzioni
- arXiv