Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.
Governance delle attività per l'implementazione del modello su HyperPod
Questa sezione spiega come ottimizzare i cluster Amazon SageMaker HyperPod EKS condivisi per carichi di lavoro di inferenza in tempo reale. Imparerai a configurare le funzionalità di governance delle attività di Kueue, tra cui la gestione delle quote, la pianificazione delle priorità e le politiche di condivisione delle risorse, per garantire che i carichi di lavoro di inferenza ottengano le risorse GPU di cui hanno bisogno durante i picchi di traffico, mantenendo al contempo un'equa allocazione tra le attività di formazione, valutazione e test dei tuoi team. Per informazioni SageMaker HyperPod governance delle attività più generali sulla governance delle attività, consulta.
Come funziona la gestione del carico di lavoro di inferenza
Per gestire efficacemente i picchi di traffico di inferenza in tempo reale nei cluster HyperPod EKS condivisi, implementa le seguenti strategie di governance delle attività utilizzando le funzionalità esistenti di Kueue.
Configurazione della classe di priorità
Definisci classi di priorità dedicate per carichi di lavoro di inferenza con pesi elevati (ad esempio 100) per garantire che i pod di inferenza siano ammessi e programmati prima di altri tipi di attività. Questa configurazione consente ai carichi di lavoro di inferenza di anticipare i lavori con priorità più bassa durante il caricamento del cluster, il che è fondamentale per mantenere i requisiti di bassa latenza durante i picchi di traffico.
Dimensionamento e allocazione delle quote
Riserva al tuo team risorse GPU sufficienti ClusterQueue
per gestire i picchi di inferenza previsti. Durante i periodi di basso traffico di inferenza, le quote di risorse inutilizzate possono essere temporaneamente assegnate alle attività di altri team. Quando la domanda di inferenza aumenta, queste risorse prese in prestito possono essere recuperate per dare priorità ai pod di inferenza in sospeso. Per ulteriori informazioni
Strategie di condivisione delle risorse
Scegliete tra due approcci di condivisione delle quote in base alle vostre esigenze:
-
Controllo rigoroso delle risorse: disabilita il prestito e il prestito di quote per garantire che la capacità GPU riservata sia sempre disponibile per i tuoi carichi di lavoro. Questo approccio richiede il dimensionamento di quote sufficientemente ampie da gestire in modo indipendente i picchi di domanda e può comportare l'inattività dei nodi durante i periodi di traffico ridotto.
-
Condivisione flessibile delle risorse: abilita il prestito di quote per utilizzare le risorse inattive di altri team quando necessario. I pod presi in prestito sono contrassegnati come scaricabili e possono essere eliminati se il team che li ha prestati recupera la capacità.
Prelazione all'interno della squadra
Abilita la priorità all'interno del team quando esegui carichi di lavoro misti (valutazione, formazione e inferenza) nell'ambito della stessa quota. Ciò consente a Kueue di anticipare i lavori a bassa priorità all'interno del team per ospitare pod di inferenza ad alta priorità, garantendo che l'inferenza in tempo reale possa essere eseguita senza dipendere dal prestito di quote esterne. Per ulteriori informazioni, consulta Preemption.
Esempio di configurazione del carico di lavoro di inferenza
L'esempio seguente mostra come Kueue gestisce le risorse GPU in un cluster Amazon condiviso. SageMaker HyperPod
Configurazione del cluster e impostazione delle politiche
Il cluster ha la seguente configurazione:
-
Team A: quota 10 GPU P4
-
Squadra B: quota 20 GPU P4
-
Provisioning statico: nessuna scalabilità automatica
-
Capacità totale: 30 P4 GPUs
Il pool di GPU condiviso utilizza questa politica di priorità:
-
Inferenza in tempo reale: priorità 100
-
Formazione: priorità 75
-
Valutazione: priorità 50
Kueue applica le quote di squadra e le classi di priorità, con la prelazione e il prestito di quote abilitati.
Stato iniziale: utilizzo normale del cluster
Nelle normali operazioni:
-
Il Team A svolge attività di formazione e valutazione su tutti i 10 P4 GPUs
-
Il Team B esegue inferenza in tempo reale (10 P4) e valutazione (10 P4) entro la sua quota di 20 GPU
-
Il cluster è completamente utilizzato con tutti i lavori ammessi e in esecuzione
Picco di inferenza: il Team B richiede ulteriori GPUs
Quando il Team B subisce un picco di traffico, i pod di inferenza aggiuntivi richiedono altri 5 P4. GPUs Kueue rileva che i nuovi pod sono:
-
All'interno dello spazio dei nomi del Team B
-
Priorità 100 (inferenza in tempo reale)
-
Ammissione in sospeso a causa di vincoli di quota
Il processo di risposta di Kueue sceglie tra due opzioni:
Opzione 1: prestito di quote - Se il Team A utilizza solo 6 dei suoi 10 P4, Kueue può ammettere i pod del Team B utilizzando i 4 P4 inattivi. Tuttavia, queste risorse prese in prestito sono presvuotabili: se il Team A invia incarichi per raggiungere la quota massima, Kueue sgombererà i pod di inferenza presi in prestito dal Team B.
Opzione 2: Auto-prelazione (consigliata): il team B esegue lavori di valutazione a bassa priorità (priorità 50). Quando i pod di inferenza ad alta priorità sono in attesa, Kueue anticipa i lavori di valutazione entro la quota del Team B e ammette i pod di inferenza. Questo approccio offre un'allocazione sicura delle risorse senza rischi di sfratto esterno.
Kueue segue un processo in tre fasi per allocare le risorse:
-
Controllo delle quote
Domanda: La squadra B ha una quota inutilizzata?
-
Sì → Ammetti i pod
-
No → Procedi alla Fase 2
-
-
Auto-prelazione all'interno del Team B
Domanda: È possibile anticipare i lavori del Team B con priorità inferiore?
-
Sì → Anticipa i lavori di valutazione (priorità 50), libera 5 P4 e ammetti i pod di inferenza
-
No → Procedi alla Fase 3
Questo approccio mantiene i carichi di lavoro entro la quota garantita del Team B, evitando rischi di sfratto esterni.
-
-
Prendere in prestito da altri team
Domanda: C'è una quota inattiva che può essere presa in prestito da altre squadre?
-
Sì → Ammetti di usare la quota presa in prestito (contrassegnata come prorogabile)
-
No → Il pod rimane nello stato
NotAdmitted
-