Analizator wydajności AMD CodeAnalyst

Podobne dokumenty
Pomiary efektywności dla AMD. Na podstawie dokumentacji AMD opracował: Rafał Walkowiak Listopad 2012

Pomiary efektywności dla AMD Family 10h. Na podstawie dokumentacji AMD opracował: Rafał Walkowiak Wersja listopad 2015

Pomiary efektywności dla AMD. Na podstawie dokumentacji AMD opracował: Rafał Walkowiak Wersja wrzesień 2016

Pomiary efektywności dla komputerów z procesorami. Na podstawie dokumentacji AMD opracował: Rafał Walkowiak listopad 2015, zmiany listopad 2016

Pomiary efektywności dla komputerów z procesorami. Opracował: Rafał Walkowiak marzec 2019

Pomiary efektywności dla komputerów z procesorami. Na podstawie dokumentacji AMD opracował: Rafał Walkowiak zmiany kwiecień 2018

Przykładem jest komputer z procesorem 4 rdzeniowym dostępny w laboratorium W skład projektu wchodzi:

PROGRAM TESTOWY LCWIN.EXE OPIS DZIAŁANIA I INSTRUKCJA UŻYTKOWNIKA

Struktura i funkcjonowanie komputera pamięć komputerowa, hierarchia pamięci pamięć podręczna. System operacyjny. Zarządzanie procesami

NETBEANS PROFILER TOMASZ ŁUKASZUK

Win Admin Replikator Instrukcja Obsługi

Ćwiczenie Zmiana sposobu uruchamiania usług

2. Architektura mikrokontrolerów PIC16F8x... 13

Win Admin Monitor Instrukcja Obsługi

Przejrzystość, intuicyjny charakter i łatwość oprogramowania sterowników FATEK.

SYSTEMY OPERACYJNE I SIECI KOMPUTEROWE

Kurs Zaawansowany S7. Spis treści. Dzień 1

Układ sterowania, magistrale i organizacja pamięci. Dariusz Chaberski

Przygotowanie kilku wersji kodu zgodnie z wymogami wersji zadania,

Getin Noble Bank SA wersja 1.0 Infolinia

Rejestratory Sił, Naprężeń.

ICD Wprowadzenie. Wprowadzenie. Czym jest In-Circuit Debugger? 2. O poradniku 3. Gdzie szukać dodatkowych informacji? 4

Procedury techniczne modułu Forte Kontroling. Raportowanie danych w MS Excel - Konfiguracja IIS na Windows oraz wykonanie importu

Programowanie Niskopoziomowe

Lumel Proces pierwsze kroki

1.2. Architektura rdzenia ARM Cortex-M3...16

VMware View: Desktop Fast Track [v5.1] Dni: 5. Opis: Adresaci szkolenia

Wersja podstawowa pozwala na kompletne zarządzanie siecią, za pomocą funkcji oferowanych przez program:

Architektura mikroprocesorów z rdzeniem ColdFire

Budowa Mikrokomputera

Hikvision ivms

Instrukcja użytkownika ARSoft-WZ1

1. Wprowadzenie Programowanie mikrokontrolerów Sprzęt i oprogramowanie... 33

Instalacja SQL Server Express. Logowanie na stronie Microsoftu

Wirtualizacja panelu HMI w systemie LOGO!

INSTRUKCJA DO OPROGRAMOWANIA KOMPUTEROWEGO

Systemy operacyjne. wykład dr Marcin Czarnota laboratorium mgr Radosław Maj

Wprowadzenie. Dariusz Wawrzyniak. Miejsce, rola i zadania systemu operacyjnego w oprogramowaniu komputera

Veronica. Wizyjny system monitorowania obiektów budowlanych. Instrukcja oprogramowania

Instrukcja obsługi Konfigurator MLAN-1000

Wprowadzenie. Dariusz Wawrzyniak. Miejsce, rola i zadania systemu operacyjnego w oprogramowaniu komputera

OPTIMA PC v Program konfiguracyjny dla cyfrowych paneli domofonowy serii OPTIMA ELFON. Instrukcja obsługi. Rev 1

GATHERING DATA SYSTEM FOR CONCRETE S SAMPLE DESTRUCTING RESEARCHES WITH USE OF LABVIEW PACKET

Systemy operacyjne. Wprowadzenie. Wykład prowadzą: Jerzy Brzeziński Dariusz Wawrzyniak

Lp. Parametry Wymagane Warunek Opisać 1 Serwer 1.1 Producent oprogramowania Podać 1.2 Kraj pochodzenia Podać 1.3. Wymóg.

Sprzęt komputerowy 2. Autor prezentacji: 1 prof. dr hab. Maria Hilczer

GNU GProf i GCov. przygotował: Krzysztof Jurczuk Politechnika Białostocka Wydział Informatyki Katedra Oprogramowania ul. Wiejska 45A Białystok

Referat pracy dyplomowej

IO - Plan testów. M.Jałmużna T.Jurkiewicz P.Kasprzyk M.Robak. 5 czerwca 2006

Programowanie niskopoziomowe. dr inż. Paweł Pełczyński

Spis treści. Lekcja 1: Podstawy projektu 1. Lekcja 2: Określanie zasobów 28. Umiejętności do zdobycia w tej lekcji 28

Ćwiczenia z S Komunikacja S z miernikiem parametrów sieci PAC 3200 za pośrednictwem protokołu Modbus/TCP.

Tomography Tracking Instrukcja użytkownika

RDZEŃ x86 x86 rodzina architektur (modeli programowych) procesorów firmy Intel, należących do kategorii CISC, stosowana w komputerach PC,

NIEZAWODNE ROZWIĄZANIA SYSTEMÓW AUTOMATYKI

Tytuły Wykonawcze. Opis systemu tworzenia dokumentacji TW-1

System obliczeniowy laboratorium oraz. mnożenia macierzy

CRM VISION FUNKCJE SYSTEMU

Win Admin Replikator Instrukcja Obsługi

Architektura komputera. Dane i rozkazy przechowywane są w tej samej pamięci umożliwiającej zapis i odczyt

Internetowy sterownik podlewania ogrodowego na LOGO! Sieciowy dostęp do LOGO! za pomocą http

Multimetr cyfrowy MAS-345. Instrukcja instalacji i obsługi oprogramowania DMM VIEW Ver 2.0

FAQ: /PL Data: 3/07/2013 Konfiguracja współpracy programów PC Access i Microsoft Excel ze sterownikiem S7-1200

Praca dyplomowa. Program do monitorowania i diagnostyki działania sieci CAN. Temat pracy: Temat Gdańsk Autor: Łukasz Olejarz

Kurs Podstawowy S7. Spis treści. Dzień 1

Spis treści. Dzień 1. I Konfiguracja sterownika (wersja 1410) II Edycja programu (wersja 1406) III Środowisko TIA Portal (wersja 1410)

Zawartość. Wstęp. Moduł Rozbiórki. Wstęp Instalacja Konfiguracja Uruchomienie i praca z raportem... 6

Necurs analiza malware (1)

Na komputerach z systemem Windows XP zdarzenia są rejestrowane w trzech następujących dziennikach: Dziennik aplikacji

Instytut Teleinformatyki

Budowa komputera. Magistrala. Procesor Pamięć Układy I/O

Instrukcja użytkownika ARsoft-CFG WZ1 4.0

Szkolenia specjalistyczne

Programowanie aplikacji na iphone. Wstęp do platformy ios. Łukasz Zieliński

Instrukcja konfiguracji programu KS-ASW do pracy w trybie wielopodmiotowym

Projekt dotyczy stworzenia zintegrowanego, modularnego systemu informatycznego wspomagającego zarządzanie pracownikami i projektami w firmie

Politechnika Gdańska Katedra Optoelektroniki i Systemów Elektronicznych

ISTOTNE POSTANOWIENIA UMOWY

INSTRUKCJA UŻYTKOWNIKA MPCC

2014 Electronics For Imaging. Informacje zawarte w niniejszej publikacji podlegają postanowieniom opisanym w dokumencie Uwagi prawne dotyczącym tego

Skrócona instrukcja obsługi czujników Fast Tracer firmy Sequoia.

1. Opis. 2. Wymagania sprzętowe:

Wstęp 7 Rozdział 1. OpenOffice.ux.pl Writer środowisko pracy 9

Optymalizacja programów Open Source. Profilery wysokiego poziomu część 2. Krzysztof Lichota

Mobilny Portal Pracownika. Mobilny Portal Pracownika ( Windows Phone 8 )

Pamięć wirtualna. Przygotował: Ryszard Kijaka. Wykład 4

Asystent planisty w systemie USOS

Kurs Wizualizacja z WinCC SCADA - Zaawansowany. Spis treści. Dzień 1. I VBS w WinCC podstawy programowania (zmienne, instrukcje, pętle) (wersja 1410)

Budowa komputera. Magistrala. Procesor Pamięć Układy I/O

Fiery Remote Scan. Uruchamianie programu Fiery Remote Scan. Skrzynki pocztowe

Podręcznik użytkownika

Tytuł: Instrukcja obsługi Modułu Komunikacji internetowej MKi-sm TK / 3001 / 016 / 002. Wersja wykonania : wersja oprogramowania v.1.

Konwersja maszyny fizycznej na wirtualną.

SYSTEM VILM ZARZĄDZANIE CYKLEM ŻYCIA ŚRODOWISK WIRTUALNYCH. tel: +48 (032)

System pamięci. Pamięć wirtualna

System plików. Warstwowy model systemu plików

Instrukcja obsługi SafeIT - modułu zdalnego sterowania do sterowników kotłów CO firmy Foster v1.0

Systemy operacyjne i sieci komputerowe. 1 SYSTEMY OPERACYJNE I SIECI KOMPUTEROWE. Etapy uruchamiania systemu

MONITOROWANIE JAKOŚCI W SYSTEMIE MES

Ulotka. Zmiany w wersji

Transkrypt:

Analizator wydajności AMD CodeAnalyst Dostępny bezpłatnie dla Windows i Linux (różne funkcjonalności w obu systemach) Pozwala na 4 tryby pracy - profilowania: Bazujące na upływie czasu próbkowanie aplikacji ze stałą częstością, zapisywanie licznika rozkazów i określanie statystycznie najbardziej czasochłonnych części kodu w postaci histogramu (time-based profiling) Bazujące na zdarzeniach określenie zdarzeń, których (orientacyjne) miejsce występowania ma być mierzone, określenie progu zliczania dla każdego badanego zdarzenia (tylko procesory AMD)(event-based profiling)

CodeAnalyst cd Próbkowanie pobrań kodu i raportowanie powiązanych zdarzeń (tylko procesory AMD)(instruction-base fetch sampling) Próbkowanie operacji procesora pod względem wywoływanych zdarzeń (tylko procesory AMD) (instruction-base operation sampling) Profilowanie wątków (cykliczne monitorowanie przydziału rdzenia, procesora i nielokalnych dostępów do pamięci) (tylko procesory AMD)(thread based sampling)

Działanie programu profilującego Program profilujący pracuje w ramach projektów składających się z sesji. Dla każdej sesji należy określić: badaną aplikację i katalog roboczy rodzaj realizowanego profilowania, czas rozpoczęcia i zakończenia zbierania danych, częstotliwość próbkowania lub inne parametry w zależności od trybu pracy maskę powinowactwa wątków. Przygotowana sesja profilowania może zostać uruchomiona. Efektem uruchomienia jest dodanie nowejsesji w oknie zarządzania projektem. Wybór tej sesji powoduje wyświetlenie wyników sesji profilowania. Wyniki prezentowane są w grupach informacji charakterystycznych do realizowanego typu sesji. Można obserwować zbierane wyniki w wartościach bezwzględnych lub w udziale procentowym dla poszczególnych modułów oprogramowania, procesów i rdzeni. Dostępne wyniki profilowania można filtrować i prezentować wyrywkowo sposób prezentacji określa się w oknie dialogowym zarządcy widoku (view management dialog box).dane zebranedlaposzczegónychmodułów kodu można analizować z rozbiciem na informacje dla linii kodu źródłowego i asemblera.

Profilowanie bazujące na upływie czasu Program profilujący zbiera więcej próbek w obszarach kodu, w których program spędza więcej czasu gdyż pobranie próbki w tym obszarze jest bardziej prawdopodobne. Wynikowy histogram określa rozkład próbek, a wysokie wartości wskazują na czasochłonne fragmenty kodu. Standardowy okres próbkowania przetwarzania w CodeAnalyst wynosi 1 ms i może zostać zmieniony poprzez Configuration Management w narzędziach programu profilującego.

Timer based profiling Prezentacja liczby próbek (miara upływu czasu) zebranych w ramach poszczególnych rdzeni dla przetwarzania modułów kodu.

Timer based profiling -sampling

Profilowanie bazujące na zdarzeniach Możliwy jest wybór konfiguracji standardowej profilowania lub określenie własnego zestawu badanych zdarzeń. Predefiniowane konfiguracje dotyczą: Assess performance - ocena wydajność realizacji kodu, Investigate data access analiza dostępu do pp danych i DTLB, Investigate L2 cache access analiza dostepu do pp L2, Investigate instruction access analiza dostępu do pp instrukcji i ITLB, Investigate branching analiza realizacji kodu w rozgałęzieniach wraz z predykcją Predefiniowana konfiguracja zawiera wybór śledzonych zdarzeń wraz z krotnością ich wystąpienia powodującą zliczanie. W przypadku wybrania większej niż liczba liczników liczby śledzonych zdarzeń należy również określić okres przełączania liczników pomiędzy grupami zdarzeń. Niektóre zdarzenia umożliwiają określenie warunków dodatkowych związanych z ich kwalifikacją do zliczenia wyboru warunków dodatkowych można dokonać również w oknie edycji konfiguracji zdarzeń. Możliwa jest prezentacja wyników profilowania na poziomie modułów kodu, linii kodu źródłowego i asemblera. Możliwe jest tematyczne filtrowanie zebranych wyników i wyświetlanie parametrów skonsolidowanych.

Event based profiling

Próbkowanie pobrań kodu (fetch sampling - instruction-base samp.) Parametrem sesji profilowania jest okres próbkowania. Osiągnięcie określonego progu zliczania pobrań powoduje monitorowanie aktualnej operacji pobrania. Zakończenie lub przerwanie pobrania powoduje zapisanie próbki na temat zrealizowanej operacji pobrania. Zapisywane a następnie raportowane informacje dotyczą: identyfikatora procesu, adresu wirtualnego pobranej instrukcji procesu, trafienia do ITLB L1 i L2, trafienie do pp IC, opóźnienie pobrania.

Próbkowanie operacji procesora (operation based - instruction-base samp.) Parametrem sesji profilowania jest okres próbkowania. Osiągnięcie określonego progu zliczania cykli procesora powoduje monitorowanie aktualnej makrooperacji do momentu jej zrealizowania lub usunięcia. Dla zakończonych makrooperacjizapisywana a następnie raportowane informacje dotyczą: identyfikatora procesu, adresu wirtualnego instrukcji do której należy makrooperacja, Czas realizacji makrooperacji do zakończenia Czas realizacji makrooperacji do zatwierdzenia właściwej predykcji / realizacji rozgałęzienia, typu operacji odczyt, zapis, trafienie do DTLB, trafienie do DC Opóźnienie w przypadku braku trafienia do DC Lokalnego lub zdalnego dostępu, faktycznego źródła danych w przypadku korzystania ze sterownika pamięci. Wyjaśniona lista zdarzeń powiązanych z instructionbasedsampling jest zawarta w on-line-help do CodeAnalyst.

Event based sampling DC miss

Instruction based sampling (operations) DC miss

Profilowanie wątków Profilowanie dostarcza informacji o zachowaniu wątków realizowanych w wielordzeniowym środowisku. Pozwala określić stopień powinowactwa wątków (affinity). Profilowanie wątków dostarcza również informacji o nielokalnych (bardziej kosztownych) dostępach do pamięci w NUMA. Podczas próbkowania stanu przetwarzania zbierane są identyfikatory przerwanych procesów. Liczniki zdarzeń są zaprogramowane do monitorowania nielokalnych (poza węzeł) odwołań do pamięci.

Thread profiling Dwie sesje profilowania dla róŝnej liczby wątków tego samego przetwarzania.

Widok wyników profilowania timer-based w CodeAnalyst & MVS