Zesty automatizza la condivisione delle GPU per l'IA su Kubernetes

Per la maggior parte dei carichi di lavoro di IA, un processore grafico, o GPU, viene ancora assegnato per intero: un'applicazione, un chip, qualunque cosa il chip stia effettivamente facendo. L'annuncio parte da un dato: il 66% delle organizzazioni che ospitano modelli di IA generativa esegue su Kubernetes una parte o la totalità dell'inferenza. Kubernetes è il sistema open source che pianifica l'esecuzione dei container su un gruppo di macchine. L'inferenza è la fase in cui un modello addestrato risponde alle richieste e, secondo le parole dell'annuncio, la capacità GPU necessaria è costosa e spesso limitata.
I team hanno provato a condividere questi chip. L'annuncio cita il time-slicing, il Multi-Process Service (MPS) di NVIDIA e il Multi-Instance GPU (MIG), che divide ogni GPU in partizioni fisse basate sull'hardware. La sua diagnosi è che queste allocazioni non riescono a tenere il passo con una domanda di IA che sale e scende. Memoria e potenza di calcolo finiscono bloccate, e i team acquistano altre GPU anche quando la capacità esistente resta inutilizzata.
La recente release open source di Run:ai da parte di NVIDIA porta il frazionamento delle GPU su Kubernetes tramite un GPU Fractioning Operator, che impone un limite di memoria a ogni carico di lavoro e lavora insieme agli scheduler di Kubernetes. Ma il frazionamento definisce soltanto come una GPU può essere divisa. Non decide chi riceve cosa, e l'annuncio sottolinea che serve a tal fine un livello decisionale separato. Automated Fractional GPUs di Zesty colma questo vuoto: determina in modo continuo quali carichi di lavoro condividono ciascuna GPU, quanti possono girare insieme in sicurezza, quanta memoria riceve ciascuno, quale modalità di condivisione è più adatta e quando le allocazioni devono crescere o diminuire. Si basa su memoria e utilizzo misurati, sul comportamento osservato nel tempo e sui limiti di latenza e di risorse fissati in anticipo dai team, e ogni modifica resta entro queste politiche.
Il livello si installa come agente leggero all'interno del cluster, accanto all'operatore di NVIDIA e allo scheduler di Kubernetes, e supporta time-slicing e MPS. Nulla nell'applicazione o nel modello deve cambiare, e l'installazione non riavvia i carichi di lavoro in esecuzione. Su uno stack GPU supportato, Zesty afferma di gestire da sé la configurazione di Kubernetes, senza modifiche manuali ai manifest.
I destinatari sono i team di piattaforma che già eseguono l'inferenza su Kubernetes, e possono utilizzarlo da subito, perché il prodotto è disponibile come parte della piattaforma Zesty. Secondo l'annuncio, il livello permette di avere meno chip inattivi, eseguire più carichi di lavoro sull'hardware già posseduto, acquistare meno capacità di riserva per i picchi e ridurre i costi infrastrutturali, proteggendo al tempo stesso le prestazioni delle applicazioni. L'annuncio non quantifica nulla di tutto ciò: non fornisce alcun aumento dell'utilizzo, alcuna percentuale di risparmio, alcun prezzo e alcun cliente. Restano affermazioni del fornitore, e la verifica che resta aperta è quella che ogni team può fare da sé: misurare l'utilizzo sul proprio cluster prima e dopo.
Commenti
Caricamento della discussione…
Accedi per scrivere un commento. Accedi