NVIDIA ha annunciato il rilascio di TensorRT-LLM, un software open-source per ottimizzare e accelerare le operazioni di inferenza dei grandi modelli linguistici.
Sviluppata in collaborazione con Meta, Anyscale, Cohere, Grammarly e altre compagnie, la nuova soluzione comprende un compiler per deep learning TensorRT, kernel ottimizzati, step per il pre- e post-processing e primitive per la comunicazione multi-GPU/multi-nodo per moltiplicare le performance delle GPU.
Stando ai benchmark condivisi da NVIDIS, una GPU H100 con TensorRT-LLM si è rivelata 8 volte più veloce rispetto a una A100 per un task di riassunto del testo, e 4 volte più veloce rispetto a una H100 senza software. In un test con Llama 2, il modello linguistico di Meta, la soluzione ha permesso un'accelerazione delle performance di 4,6 volte in più rispetto a una A100.
Il miglioramento delle performance incide positivamente anche sui consumi elettrici delle GPU: con TensorRT-LLM su H100 i costi si riducono di 3 volte rispetto a quelli di A100 durante l'inferenza di Llama 2 (70 miliardi di parametri).
In-flight batching
Una delle caratteristiche principali della soluzione NVIDIA è l'in-flight batching, una tecnica per ottimizzare la schedulazione dei task e l'esecuzione parallela delle richieste batch.
Con questa tecnica, invece di aspettare che l'intero batch di richieste finisca per passare al successivo, TensorRT-LLM rimuove immediatamente le sequenze terminate dal batch e inizia l'esecuzione delle nuove richieste mentre le precedenti sono ancora in corso.
Questo approccio consente di sfruttare in modo più efficiente le risorse GPU e aumentare la capacità di elaborazione, arrivando a raddoppiare il throughput su un benchmark con GPU Tensor Core H100.
Essendo modulare e open-source, il software può essere esteso con nuove funzionalità per la definizione, l'ottimizzazione e l'esecuzione di nuove architetture.
TensorRT-LLM è disponibile in early access e arriverà sul mercato globale nel corso delle prossime settimane, integrato nel framework NeMo per la distribuzione dei grandi modelli generativi.
Il software include versioni ottimizzate e pronte all'uso degli LLM più usati, tra i quali LLama 2, GPT-2, GPT-3, Falcon, Mosaic MPY e Bloom. Ognuno di essi può essere utilizzato tramite API Python fornite dal software.