Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
Questo articolo illustra le procedure consigliate per il monitoraggio e l'interpretazione dei segnali GPU in Servizio Azure Kubernetes (AKS). Invece di esaminare le metriche GPU NVIDIA in isolamento, è possibile correlare i segnali tra l'utilizzo, la memoria e il contesto del carico di lavoro per migliorare le prestazioni a lungo termine e l'efficienza dei nodi.
Importante
Le funzionalità di anteprima di AKS sono disponibili su base self-service, su scelta. Le anteprime vengono fornite "così come sono" e "come disponibili" e sono escluse dai contratti di servizio e dalla garanzia limitata. Le anteprime del servizio Azure Kubernetes sono parzialmente coperte dal supporto clienti con la massima diligenza possibile. Di conseguenza, queste funzionalità non sono destinate all'uso in produzione. Per altre informazioni, vedere gli articoli di supporto seguenti:
Comprendere l'utilizzo della GPU rispetto alla saturazione
Non considerare la metrica DCGM_FI_DEV_GPU_UTIL NVIDIA DCGM come punteggio di efficienza diretta.
DCGM_FI_DEV_GPU_UTIL indica solo la frequenza con cui i kernel sono attivi, quindi non indica se il carico di lavoro è efficiente per il calcolo. Per ottenere indicazioni più accurate, correlare i segnali di utilizzo anziché leggerli in modo indipendente. Confrontare DCGM_FI_DEV_GPU_UTIL con DCGM_FI_PROF_SM_ACTIVE, quindi confrontare DCGM_FI_PROF_SM_ACTIVE con DCGM_FI_PROF_DRAM_ACTIVE per identificare se il collo di bottiglia è dovuto al calcolo, alla memoria o al sovraccarico di avvio e sincronizzazione.
Un valore DCGM_FI_DEV_GPU_UTIL con un valore DCGM_FI_PROF_SM_ACTIVE basso spesso indica un sovraccarico di avvio, stalli di sincronizzazione o contesa di memoria. Un valore DCGM_FI_PROF_SM_ACTIVE alto con un valore DCGM_FI_PROF_DRAM_ACTIVE basso è più coerente con un comportamento associato al calcolo. Un valore DCGM_FI_PROF_DRAM_ACTIVE più alto con un valore DCGM_FI_PROF_SM_ACTIVE più basso in genere indica un'esecuzione limitata dalla memoria.
Note
DCGM_FI_PROF_SM_ACTIVE e DCGM_FI_PROF_DRAM_ACTIVE sono campi di profilatura DCGM e potrebbero non essere visualizzati per impostazione predefinita per tutti i tipi di architettura GPU NVIDIA offerti in dimensioni di macchina virtuale (VM) Azure.
Questo approccio basato innanzitutto sulla correlazione consente di evitare l'aumento del numero di istanze quando il problema radice potrebbe risiedere nell'efficienza del kernel o nei modelli di accesso alla memoria. Per informazioni dettagliate sulla semantica delle metriche, vedere la guida per l'utente nvidia DCGM.
Usare la pressione della memoria come segnale di pianificazione principale
Se la memoria si avvicina ripetutamente alle soglie di memoria insufficiente, considera tale modello come un indicatore precoce dell'instabilità. Kubernetes non dispone di un segnale nativo di utilizzo elevato della memoria GPU, quindi l’esaurimento della VRAM di solito emerge solo come interruzioni per memoria insufficiente dei contenitori e interruzioni dei pod, spesso molto dopo che la telemetria DCGM ha già mostrato la tendenza.
Automatizzare le azioni del ciclo di vita dei nodi dai segnali di integrità della GPU
Questa procedura è particolarmente importante per i pool di nodi GPU AKS di lunga durata, in cui l'invecchiamento dell'host può differire tra i nodi.
Allineare i segnali di osservabilità alle decisioni di ridimensionamento
Per il ridimensionamento verticale, creare un nuovo pool di nodi in un diverso SKU di macchina virtuale abilitato per GPU di Azure ed eseguire la migrazione dei carichi di lavoro quando i vincoli di alimentazione o termici limitano la velocità effettiva, ad esempio quando DCGM_FI_DEV_POWER_USAGE rimane vicino al limite mentre DCGM_FI_PROF_SM_ACTIVE rimane costante nonostante la domanda.
Separare le politiche di osservabilità per MIG e non-MIG
Quando MIG è abilitato, l'ambito di ciascuna metrica cambia, quindi i segnali devono essere interpretati in modo diverso.
Pubblicare metriche di efficienza GPU in grado di tenere conto dei costi
Ottimizzare la visibilità dei costi, non solo le prestazioni. Una metrica derivata di alto valore per i team della piattaforma AKS è il confronto tra i GPU-seconds utilizzati e i GPU-seconds allocati. Usa la telemetria di DCGM e le integrazioni contestuali di Kubernetes per pubblicare questa metrica per spazio dei nomi e classe di carico di lavoro; quindi analizzala nel tempo come KPI condiviso tra i team di piattaforma e finanziario. Questo approccio definisce una fonte comune di verità per le decisioni di ottimizzazione e consente di evitare che l'over-allocation venga nascosta dalle medie di utilizzo aggregato.
Passaggi successivi
- Consultare Procedure consigliate per la GPU per il servizio Azure Kubernetes
- Inizia con l'osservabilità delle GPU gestite tramite AKS.
- Ottimizzare l'allocazione con nodi GPU a istanze multipla (MIG).
- Ridimensionare in base ai segnali GPU usando le metriche KEDA e DCGM.