Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Table of Contents
outlinetrue
stylenone

...

Wprowadzenie do Arm MAP

Arm MAP to profiler, analizujący zachowanie aplikacji pod kątem wydajności i zużycia różnych zasobów, umożliwiający interaktywną analizę profilu wykonania programu, dostosowany do pracy z aplikacjami rozproszonymi i wielowątkowymi.

Niniejsze wprowadzenie zakłada znajomość: Tryb graficzny (przypomnienie) oraz Wprowadzenie do pakietu Arm Forge.ePoniższy opis ma na celu wprowadzenie do MAP : dać ogląd jego funkcjonalności i umożliwić szybkie rozpoczęcie korzystania z tego narzędzia. Aby lepiej zrozumieć możliwości i nabrać biegłości, trzeba samemu zacząć stosować w myśl "praktyka czyni mistrza".

Kiedy i po co używać MAP (wskazówki)?

MAP jest to profiler - stosujemy go w procesie optymalizacji, w celu poznania zachowania naszego kodu. Do procesu optymalizacji przystępujemy w momencie gdy posiadamy poprawnie działający (kompletny) program. Jego zastosowanie można rozbić na dwa kroki:

...

Wyniki zebrane przez MAP mogą pozwolić zlokalizować nam różne problemy dotyczące wydajności naszego kodu. Wymaga to naszej analizy i umiejętności wyciągania wniosków z zebranych wyników - program sam za nas niczego nie zrobi. Tyle i aż tyle.

Jak uruchomić MAP?

Rozważmy przykładową aplikację, uruchamianą pod MPI:

...

Otworzy się wtedy właściwe GUI programu MAP, w którym będziemy mogli przeanalizować zebrane wyniki.

...

Podstawowe funkcjonalności

  • czas spędzony w funkcjach (wedle ścieżki wywołania - stack)
  • czas spędzony w funkcjach (płaski profile - suma wszystkich wywołań), rozróżnienie inclusive i exclusive (self) time
  • kolorowanie czasu, wedle aktywności: obliczenia, komunikacja (MPI), I/O
  • możliwe inne widoki (metryki)
  • zoomowanie się na konkretny wycinek czasu

Dodatkowe uwagi

  • user guide, https://developer.arm.com/docs/101136/2001/map
  • INTERVAL (próbkowanie), można przestawić
  • można wykonać map bez opcji --profile, wtedy otworzy się GUI, wykona program i od razu otworzą się wyniki; stosować tylko dla zadań o małej liczbie CPU lub gdy na analizę spędzamy tylko kilka chwil

...