Smetti di sprecare budget con le GPU inattive. Scopri come implementare l'allocazione dinamica, la multitenancy e la scalabilità automatica efficace per i carichi di lavoro di IA.
La necessità di GPUaaS su Red Hat OpenShift AI
Per le organizzazioni che investono molto nell'IA, il costo dell'hardware specializzato è una delle principali preoccupazioni. Le GPU/gli acceleratori sono costosi e, se non vengono utilizzati e rimangono inattivi, comportano un notevole spreco di budget, rendendo più difficile la scalabilità dei progetti di IA. Una soluzione è l'adozione di GPU-as-a-Service (GPUaaS), un modello operativo progettato per massimizzare il ritorno sull'investimento (ROI) dell'hardware.
Red Hat OpenShift AI è una piattaforma basata su Kubernetes che può essere utilizzata per implementare soluzioni GPUaaS multiutente. Il primo passo è il provisioning dell'hardware, ma per ottenere una vera GPUaaS è necessaria un'allocazione dinamica aggiuntiva in base alla domanda dei carichi di lavoro, in modo che le GPU vengano recuperate più rapidamente per ridurre al minimo i tempi di inattività.
La GPUaaS richiede anche la multitenancy. È qui che strumenti avanzati per l'accodamento come Kueue (Kubernetes Elastic Unit Execution) diventano indispensabili. Kueue suddivide le risorse condivise e applica la multitenancy tramite quote, garantendo un accesso equo e prevedibile a più team e progetti. Una volta implementata questa governance, la sfida principale si sposta sulla creazione di una pipeline di scalabilità automatica per i carichi di lavoro di IA.
Integrazione e scalabilità automatica dei carichi di lavoro di IA
L'obiettivo di una piattaforma GPUaaS è integrare i framework di IA più diffusi e raggiungere la scalabilità automatica delle risorse in base alla domanda dei carichi di lavoro. OpenShift AI semplifica il deployment dei framework di IA più comuni.
Questi carichi di lavoro si dividono in tre categorie principali, tutte supportate da Kueue.
- Inferenza: framework come KServe e vLLM gestiscono i modelli di distribuzione in modo efficiente, soprattutto per i modelli linguistici di grandi dimensioni (LLM).
- Addestramento (distribuito): strumenti come KubeFlow Training e KubeRay gestiscono processi di addestramento complessi e distribuiti su più nodi.
- Scienza dei dati interattiva: gli ambienti di lavoro, ovvero gli ambienti per notebook per la scienza dei dati di OpenShift AI, si integrano anche con Kueue in modo che i notebook vengano avviati solo quando le risorse sono disponibili, riducendo lo spreco di risorse.
Gestione delle code con Kueue
La sfida principale in un cluster di IA multitenant è gestire il flusso di richieste di processi GPU. Questo è esattamente il ruolo di Kueue. Kueue offre funzionalità essenziali per la gestione delle code e dei batch per questi processi ad alta intensità di elaborazione.
Invece di non rispondere immediatamente a una richiesta di risorse quando un cluster è momentaneamente saturo, Kueue conserva e gestisce in modo intelligente una lista di attesa. Questa funzionalità è fondamentale per mantenere l'equità e l'efficienza, evitando che le richieste vengano respinte arbitrariamente e contribuendo a prevenire la monopolizzazione delle risorse.
Scalabilità automatica efficace con KEDA
Kueue e KEDA (Kubernetes Event-driven Autoscaling) collaborano per ottimizzare l'utilizzo delle risorse attraverso la scalabilità automatica verso l'alto e verso il basso.
Scalabilità automatica verso l'alto: KEDA monitora le metriche di Kueue, in particolare la lunghezza della coda dei processi GPU. Osservando questo backlog, KEDA può avviare in modo proattivo la scalabilità dei nuovi nodi GPU. Ciò significa che il provisioning delle nuove risorse viene effettuato prima che la capacità corrente venga sovraccaricata dalla domanda, il che si traduce in un'alta disponibilità e in una maggiore efficienza in termini di costi. Questa integrazione trasforma la coda di Kueue in un segnale di scalabilità fondamentale, consentendo una gestione proattiva delle risorse basata sulla domanda.
Scalabilità automatica verso il basso: KEDA facilita il rilascio automatico della quota recuperandola dai carichi di lavoro inattivi. Quando un carico di lavoro (ad esempio un RayCluster) termina la sua attività ma non viene eliminato, una metrica personalizzata (esposta tramite Prometheus o simile) ne segnala lo stato di inattività. KEDA monitora questa metrica inattiva e, tramite uno ScaledObject, attiva lo strumento di scalabilità automatica per ridurre i componenti di lavoro del carico di lavoro inattivo a zero repliche. In questo modo si riducono significativamente i costi operativi.
Metodi simili possono essere applicati ai cluster di inferenza, utilizzando KEDA per ridurre a zero i componenti di KServe durante i periodi di inattività. La riduzione dei componenti di lavoro libera le risorse dei nodi sottostanti. L'oggetto Kueue Workload e la relativa quota riservata rimangono invariati, quindi i team mantengono la prenotazione della quota per il processo successivo senza un processo di riaccodamento completo, riducendo al contempo lo spreco di risorse di elaborazione costose e inattive.
Ottimizzazione basata sull'osservabilità
Il monitoraggio continuo è fondamentale per migliorare l'efficienza e massimizzare il ROI delle GPUaaS. Gli amministratori devono monitorare costantemente l'integrità, la temperatura e i tassi di utilizzo delle GPU.
Lo stack Prometheus/Grafana integrato in OpenShift AI consente agli amministratori di creare dashboard personalizzate per tenere traccia dell'utilizzo della GPU, suddivise per tenant, per progetto e per GPU. Queste metriche vengono inviate al sistema, consentendo agli amministratori di perfezionare le quote GPU, regolare le policy di condivisione equa applicate da Kueue e confermare l'ottimizzazione del ROI.
Conclusioni
GPUaaS su OpenShift AI offre vantaggi diretti per le aziende. Consente di risparmiare sui costi attraverso l'allocazione dinamica della GPU, una governance migliorata grazie alla multitenancy applicata dalle code e dalle quote di Kueue e attraverso una scalabilità migliorata grazie alla scalabilità automatica integrata per tutti i carichi di lavoro di IA.
Red Hat OpenShift AI è la soluzione di livello enterprise in grado di trasformare l'hardware GPU costoso e spesso sottoutilizzato in una piattaforma GPUaaS multitenant ad alta efficienza. Visita la pagina di OpenShift AI per saperne di più.
Risorsa
L'adattabilità enterprise: predisporsi all'IA per essere pronti a un'innovazione radicale
Sugli autori
Ana Biazetti is a senior architect at Red Hat Openshift AI product organization, focusing on Model Customization, Fine Tuning and Distributed Training.
Lindani Phiri is a Senior Principal Engineer and Architect for the OpenShift AI Core Platform.
Altri risultati simili a questo
AI insights with actionable automation accelerate the journey to autonomous networks
Fast and simple AI deployment on Intel Xeon with Red Hat OpenShift
Technically Speaking | Build a production-ready AI toolbox
Technically Speaking | Platform engineering for AI agents
Ricerca per canale
Automazione
Novità sull'automazione IT di tecnologie, team e ambienti
Intelligenza artificiale
Aggiornamenti sulle piattaforme che consentono alle aziende di eseguire carichi di lavoro IA ovunque
Hybrid cloud open source
Scopri come affrontare il futuro in modo più agile grazie al cloud ibrido
Sicurezza
Le ultime novità sulle nostre soluzioni per ridurre i rischi nelle tecnologie e negli ambienti
Edge computing
Aggiornamenti sulle piattaforme che semplificano l'operatività edge
Infrastruttura
Le ultime novità sulla piattaforma Linux aziendale leader a livello mondiale
Applicazioni
Approfondimenti sulle nostre soluzioni alle sfide applicative più difficili
Virtualizzazione
Il futuro della virtualizzazione negli ambienti aziendali per i carichi di lavoro on premise o nel cloud