Narzędzie do tworzenia profilu HLO

Za pomocą narzędzia HLO Op Profile możesz sprawdzić wydajność sprzętu w przypadku różnych kategorii operacji wysokiego poziomu (HLO) wykonywanych w okresie profilowania.

Obsługiwane platformy

TPU: obsługiwane

GPU: obsługiwane

Korzystanie z narzędzia do generowania profili HLO

Profil operacyjny HLO zawiera te komponenty:

  1. Omówienie u góry strony zawiera podsumowanie ogólnego wykorzystania FLOP-ów procesora akceleratora i przepustowości HBM w okresie profilowania.
  2. Tabela poniżej zawiera bardziej szczegółowy widok wykorzystania. Uwzględnia ona kategorie operacji HLO wykonywanych przez poszczególne moduły w okresie profilowania. Możesz przeszukiwać hierarchię i wyświetlać wykorzystanie według modułu, według kategorii w ramach modułu lub według operacji w ramach kategorii. Operacje fuzji można rozwinąć, aby wyświetlić zawarte w nich operacje niebędące fuzjami, które dotyczą poszczególnych elementów.
    • Podział na kategorie jest definiowany głównie przez kompilator XLA, a XProf stosuje w pewnych sytuacjach dodatkową heurystyk (np. analizuje wykres HLO, aby zidentyfikować „fuzje konwolucyjne”).
    • Domyślnie lista modułów, kategorii i operacji jest sortowana według ułamka całkowitego czasu spędzonego na wykonywaniu modułu, kategorii lub operacji. Możesz też wybrać sortowanie według operacji, które powodują największe niedo wykorzystanie sprzętu (wykorzystanie zrównoważone przez czas trwania operacji lub „zmarnowany czas”). Po zidentyfikowaniu operacji o niskim wykorzystaniu FLOPS i wysokim czasie trwania możesz je wybrać do optymalizacji.
  3. Najedź kursorem na operację w tabeli, aby po lewej stronie wyświetlić kartę z dodatkowymi informacjami o operacji lub kategorii operacji. Kliknięcie pozycji w tabeli powoduje przypięcie karty szczegółów opcji. Te karty zwykle zawierają:
    • Link do opcji w narzędziu Graph Viewer.
    • Średni czas wykonywania.
    • Bezwzględne szybkości wykorzystania (w przeciwieństwie do wykorzystania podanego w tabeli) procesora (TFLOP/s), przepustowości HBM (GB/s) oraz przepustowości odczytu i zapisu na chipie (GB/s).
    • pełne szczegóły dotyczące XLA, w tym informacje o różnych kształtach i układach;
    • Źródło operacji XLA na poziomie frameworka.
    • Liczba wystąpień operacji i łączny czas poświęcony na jej wykonanie.

Pamiętaj, że przepustowość (GB/s) lub szybkość obliczeń (TFLOP/s) są obliczane przez połączenie statycznych danych kompilatora dotyczących FLOP lub bajtów wymaganych do wykonania operacji (licznik) z informacjami o czasie trwania operacji z profilu (mianownik). Wartości wykorzystania (procenty) są obliczane na podstawie bezwzględnych danych o korzystaniu z zasobów jako ułamek maksymalnych możliwości obliczeniowych lub maksymalnej przepustowości poszczególnych akceleratorów.