Nuta
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować się zalogować lub zmienić katalog.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Wydajne umieszczanie i optymalizacja obciążeń procesora GPU często wymaga wglądu w wykorzystanie zasobów i wydajność. Zarządzane metryki GPU w usłudze AKS (wersja zapoznawcza) zapewniają automatyczne zbieranie i udostępnianie danych dotyczących zużycia, pamięci i wydajności w pulach węzłów z obsługą procesorów GPU firmy NVIDIA. Dzięki temu administratorzy platformy mogą optymalizować zasoby klastra i deweloperów w celu dostosowywania i debugowania obciążeń przy użyciu ograniczonej instrumentacji ręcznej.
W tym artykule przedstawiono metryki procesora GPU zebrane przez eksportera programu NVIDIA Data Center GPU Manager (DCGM) z w pełni zarządzaną pulą węzłów z obsługą procesora GPU (wersja zapoznawcza) w usłudze Azure Kubernetes Service (AKS).
Ważne
Funkcje usługi AKS w wersji zapoznawczej są dostępne na zasadzie samoobsługi i wymagają zapisania się. Wersje zapoznawcze są udostępniane w wersji "as is" i "jako dostępne" i są wykluczone z umów dotyczących poziomu usług i ograniczonej gwarancji. Wersje zapoznawcze usługi AKS są częściowo objęte pomocą techniczną dla klientów, świadczoną w miarę możliwości. W związku z tym te funkcje nie są przeznaczone do użytku produkcyjnego. Aby uzyskać więcej informacji, zobacz następujące artykuły pomocy technicznej:
Wymagania wstępne
- Klaster usługi AKS z w pełni zarządzaną pulą węzłów z obsługą GPU (wersja zapoznawcza) i upewnij się, że GPU można przypisywać do zadań.
- Przykładowe obciążenie GPU wdrożone w puli węzłów obliczeniowych.
Ograniczenia
- Metryki zarządzanego procesora GPU nie są obecnie obsługiwane w usłudze Azure Managed Prometheus lub Azure Managed Grafana.
Sprawdź, czy składniki zarządzanego procesora GPU są zainstalowane
Po utworzeniu zarządzanej puli węzłów procesora GPU FIRMY NVIDIA (wersja zapoznawcza) wykonaj następujące instrukcje, upewnij się, że składniki oprogramowania procesora GPU zostały zainstalowane za pomocą polecenia az aks nodepool show :
az aks nodepool show \
--resource-group <resource-group-name> \
--cluster-name <cluster-name> \
--name <node-pool-name> \
Dane wyjściowe powinny zawierać następujące wartości:
...
...
"gpuInstanceProfile": …
"gpuProfile": {
"driver": "Install"
},
...
...
Informacje o metrykach procesora GPU
Metryki wykorzystania procesora GPU
Metryki wykorzystania procesora GPU pokazują procent czasu, w jaki rdzenie procesora GPU aktywnie przetwarzają pracę. Wysokie wartości wskazują, że procesor GPU jest intensywnie używany, co jest ogólnie pożądane w przypadku obciążeń, takich jak trenowanie lub przetwarzanie danych. Interpretacja tej metryki powinna uwzględniać typ obciążenia: trenowanie sztucznej inteligencji zwykle utrzymuje wysokie wykorzystanie, podczas gdy wnioskowanie może mieć sporadyczne wykorzystanie z powodu zwiększonego ruchu.
Wykorzystanie pamięci: przedstawia procent używanej pamięci procesora GPU. Wysokie użycie pamięci bez wysokiego wykorzystania procesora GPU może wskazywać na obciążenia związane z pamięcią, w których procesor GPU czeka na transfery pamięci. Niskie użycie pamięci z niskim wykorzystaniem może sugerować, że obciążenie jest zbyt małe, aby w pełni wykorzystać procesor GPU.
Wydajność SM (multiprocesor przesyłania strumieniowego): mierzy efektywność wykorzystania rdzeni GPU. Niska wydajność sm wskazuje, że rdzenie są bezczynne lub niedostatecznie wykorzystywane z powodu nierównowagi obciążenia lub nieoptymalnego projektu jądra. Wysoka wydajność jest idealna w przypadku aplikacji o dużych obciążeniach obliczeniowych.
Metryki pamięci
Wykorzystanie przepustowości pamięci: odzwierciedla ilość teoretycznej przepustowości pamięci, która jest zużywana. Wysokie wykorzystanie przepustowości przy niskim wykorzystaniu obliczeniowym może wskazywać obciążenie związane z pamięcią. Z drugiej strony wysokie wykorzystanie przepustowości obliczeniowej i pamięci sugeruje dobrze zrównoważone obciążenie.
Błędy pamięci: monitoruje błędy ECC (kodu korekcyjnego), jeśli są włączone. Duża liczba błędów może wskazywać na pogorszenie sprzętu lub problemy cieplne i należy je monitorować pod kątem niezawodności.
Metryki temperatury i zasilania
Temperatura procesora GPU: wskazuje temperaturę operacyjną procesora GPU. Utrzymujące się wysokie temperatury mogą wyzwalać ograniczanie cieplne, co zmniejsza wydajność. Idealna interpretacja tej metryki polega na obserwowaniu temperatury względem limitów cieplnych i wydajności chłodzenia procesora GPU.
Użycie zasilania: pokazuje natychmiastowe zużycie energii. Porównanie użycia energii z TDP (moc projektowa cieplna) pomaga zrozumieć, czy procesor GPU jest wypychany do swoich limitów. Nagłe spadki mocy mogą wskazywać na ograniczanie wydajności lub niedostateczne wykorzystanie zasobów.
Zegary i metryki częstotliwości
Zegar GPU: rzeczywista częstotliwość pracy GPU. Połączenie z wykorzystaniem pomaga określić, czy GPU ogranicza swoje możliwości lub nie osiąga wydajności względem swojego potencjału.
Zegar pamięci: częstotliwość pracy pamięci GPU. Obciążenia związane z pamięcią operacyjną mogą korzystać z wyższych taktowań pamięci; niedopasowanie między wykorzystaniem pamięci a obliczeniami może uwypuklać wąskie gardła.
Metryki PCIe i NVLink
Przepustowość PCIe: mierzy przepływność w magistrali PCIe. Niskie wykorzystanie przy dużych obciążeniach może sugerować, że komunikacja między CPU a GPU nie jest wąskim gardłem. Wysokie wykorzystanie może wskazywać na ograniczenia transferu danych wpływające na wydajność.
Przepustowość NVLink: Ta metryka jest podobna do przepustowości PCIe, ale jest specyficzna dla połączeń NVLink i istotna w systemach z wieloma GPU na potrzeby komunikacji między nimi. Wysokie użycie protokołu NVLink z niskim użyciem protokołu SM może wskazywać na synchronizację lub opóźnienia transferu danych.
Metryki błędów i niezawodności
Wycofane strony i błędy XID: śledź błędy pamięci GPU i krytyczne awarie. Częste wystąpienia sygnalizuje potencjalne błędy sprzętowe i wymagają uwagi w przypadku długotrwałych obciążeń.
Wskazówki dotyczące interpretacji
Metryki DCGM powinny być zawsze interpretowane kontekstowo do typu obciążenia na platformie AKS. Duże obciążenie wymagające dużej mocy obliczeniowej powinno najlepiej przedstawiać wysokie użycie procesora GPU i SM, wysoką przepustowość pamięci, stabilne temperatury poniżej progów ograniczania wydajności i zużycie energii blisko, ale poniżej mocy TDP.
Obciążenia związane z pamięcią mogą wykazywać wysokie wykorzystanie pamięci i przepustowość, ale mniejsze wykorzystanie zasobów obliczeniowych. Anomalie, takie jak niskie wykorzystanie przy wysokiej temperaturze lub dużym zużyciu energii, często wskazują na dławienie, nieefektywne zarządzanie zadaniami lub wąskie gardła na poziomie systemu.
Monitorowanie trendów w czasie, a nie pojedynczych migawek, ma kluczowe znaczenie. Nagłe spadki wykorzystania lub skoki błędów często ujawniają podstawowe problemy przed ich wpływem na obciążenia produkcyjne. Porównywanie metryk w wielu procesorach GPU może również pomóc zidentyfikować wartości odstające lub nieprawidłowo działające urządzenia w klastrze. Zrozumienie tych metryk w połączeniu, a nie izolacji, zapewnia najczystszy wgląd w wydajność procesora GPU i wydajność obciążenia.
Typowe metryki procesora GPU
Następujące metryki narzędzia NVIDIA DCGM są często oceniane pod kątem wydajności pul węzłów procesora GPU na platformie Kubernetes:
| Nazwa metryki procesora GPU | Meaning | Typowy zakres/wskaźnik | Porada użycia |
|---|---|---|---|
DCGM_FI_DEV_GPU_UTIL |
Wykorzystanie GPU (% czasu, gdy rdzenie GPU są aktywne) | 0–100% (wyższa jest lepsza) | Monitorowanie węzłów i podów osobno; niskie wartości mogą wskazywać na wąskie gardła CPU lub I/O |
DCGM_FI_DEV_SM_UTIL |
Wydajność multiprocesora przesyłania strumieniowego (% aktywnych rdzeni) | 0–100% | Niskie wartości z wysokim użyciem pamięci wskazują obciążenie związane z pamięcią |
DCGM_FI_DEV_FB_USED |
Używana pamięć bufora ramki (bajty) | Od 0 do całkowitej ilości pamięci | Użyj limitów pamięci GPU dla zasobników i śledź użycie pamięci dla każdego zasobnika |
DCGM_FI_DEV_FB_FREE |
Wolna pamięć procesora GPU (bajty) | Od 0 do całkowitej ilości pamięci | Przydatne do planowania i unikania błędów OOM |
DCGM_FI_DEV_MEMORY_UTIL |
Wykorzystanie pamięci (%) | 0–100% | Połącz z użyciem GPU/SM, aby określić zadania związane z ograniczeniami pamięci |
DCGM_FI_DEV_MEMORY_CLOCK |
Bieżąca częstotliwość zegara pamięci (MHz) | Od 0 do maksymalnego zegara pamięci | Niskie wartości w przypadku wysokiego wykorzystania pamięci mogą wskazywać na ograniczanie przepustowości |
DCGM_FI_DEV_POWER_USAGE |
Natychmiastowe użycie energii (Watts) | Od 0 do TDP | Spadki podczas wysokiego wykorzystania mogą wskazywać na ograniczanie przepustowości |
DCGM_FI_DEV_TEMPERATURE |
Temperatura procesora GPU (°C) | ~30–85°C zakres normalny | Alert dotyczący utrzymujących się wysokich temperatur |
DCGM_FI_DEV_NVLINK_RX |
Wykorzystanie przepustowości odbiorczej NVLink (%) | 0–100% | Wąskie gardło synchronizacji z wieloma procesorami GPU w przypadku wysokiego użycia protokołu SM |
DCGM_FI_DEV_XID_ERRORS |
Błędy krytyczne procesora GPU zgłaszane przez sterownik | Zazwyczaj 0 | Wymagane jest natychmiastowe badanie; węzeł na platformie Kubernetes może być oznaczony jako skażony. |
Aby dowiedzieć się więcej na temat pełnego zestawu metryk GPU, odwiedź dokumentację upstream NVIDIA DCGM.
Następne kroki
- Śledzenie kondycji węzła procesora GPU za pomocą narzędzia do wykrywania problemów z węzłem (NPD)
- Tworzenie pul węzłów GPU z wieloma instancjami w usłudze AKS
- Zapoznaj się z dodatkiem operatora łańcucha narzędzi AI do wnioskowania i dostrajania AI.