Miary i pomiary wydajności. Krzysztof Banaś Obliczenia Wysokiej Wydajności 1

Podobne dokumenty
Miary i pomiary wydajności

Zegar - układ wysyłający regularne impulsy o stałej szerokości (J) i częstotliwości (f)

Wydajność systemów a organizacja pamięci, czyli dlaczego jednak nie jest aż tak źle. Krzysztof Banaś, Obliczenia wysokiej wydajności.

Obliczenia Wysokiej Wydajności

Wydajność systemów a organizacja pamięci. Krzysztof Banaś, Obliczenia wysokiej wydajności. 1

4/10/2013. Koszt wydajności komputerów. Miary wydajności komputerów (MIPS) Miary wydajności komputerów (SPEC)

Cezary Bolek Katedra Informatyki. Prawo Moore a

Prawo Moore a 4/10/2013. Wstęp do Informatyki

Wydajność systemów a organizacja pamięci. Krzysztof Banaś, Obliczenia wysokiej wydajności. 1

Wydajność systemów a organizacja pamięci. Krzysztof Banaś, Obliczenia wysokiej wydajności. 1

Plan wykładu. Architektura systemów komputerowych. Cezary Bolek

Obliczenia Wysokiej Wydajności

Wydajność obliczeń a architektura procesorów. Krzysztof Banaś Obliczenia Wysokiej Wydajności 1

MODYFIKACJA SPECYFIKACJI ISTOTNYCH WARUNKÓW ZAMÓWIENIA

PROGRAMOWANIE WSPÓŁCZESNYCH ARCHITEKTUR KOMPUTEROWYCH DR INŻ. KRZYSZTOF ROJEK

Algorytmy i Struktury Danych

Oprogramowanie na miarę z13

Architektura systemów komputerowych

Numeryczna algebra liniowa

Skalowalność obliczeń równoległych. Krzysztof Banaś Obliczenia Wysokiej Wydajności 1

Wydajność programów sekwencyjnych. Krzysztof Banaś Obliczenia Wysokiej Wydajności 1

Dr inż. hab. Siergiej Fialko, IF-PK,

Architektury komputerów Architektury i wydajność. Tomasz Dziubich

Wstęp. Przetwarzanie równoległe. Krzysztof Banaś Obliczenia równoległe 1

Parametry wydajnościowe systemów internetowych. Tomasz Rak, KIA

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

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

ISBN Copyright by Jacek Kitowski Kraków 2000

16. Taksonomia Flynn'a.

Analiza ilościowa w przetwarzaniu równoległym

10/14/2013 Przetwarzanie równoległe - wstęp 1. Zakres przedmiotu

Literatura. 11/16/2016 Przetwarzanie równoległe - wstęp 1

Programowanie procesorów graficznych GPGPU

Wprowadzenie. Klastry komputerowe. Superkomputery. informatyka +

PROGRAMOWANIE WSPÓŁCZESNYCH ARCHITEKTUR KOMPUTEROWYCH DR INŻ. KRZYSZTOF ROJEK

Tworzenie programów równoległych cd. Krzysztof Banaś Obliczenia równoległe 1

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

Macierze All Flash. Czy to jest alternatywa dla macierzy klasy Enterprise? Krzysztof Jamiołkowski HP EG Storage Solutions Architect

Serwer biznesowy o podwójnym zastosowaniu moc obliczeniowa i pamięć masowa w jednej obudowie

Serwery: testy wydajności

Nowoczesne technologie przetwarzania informacji

Procesory wielordzeniowe (multiprocessor on a chip) Krzysztof Banaś, Obliczenia wysokiej wydajności.

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

Tom II: SZCZEGÓŁOWY OPIS PRZEDMIOTU ZAMÓWIENIA (SOPZ): Przedmiotem zamówienia jest dostawa sprzętu infrastruktury serwerowej i sieciowej.

Analiza porównawcza wybranych własności systemów zarządzania bazami danych

Budowa Mikrokomputera

Procesory wielordzeniowe (multiprocessor on a chip) Krzysztof Banaś, Obliczenia wysokiej wydajności.

Wydajność obliczeń równoległych. Krzysztof Banaś Obliczenia Wysokiej Wydajności 1

Pamięci. Pamięci DDR DIMM SDR SDRAM

Architektura mikroprocesorów z rdzeniem ColdFire

Komputer IBM PC niezależnie od modelu składa się z: Jednostki centralnej czyli właściwego komputera Monitora Klawiatury

Systemy operacyjne. Systemy operacyjne. Systemy operacyjne. Zadania systemu operacyjnego. Abstrakcyjne składniki systemu. System komputerowy

Wymagania techniczne. Serwer bazy danych dla KRK szt. 2. Oferowany model.. Producent..

Product Design Suite. AutoCAD. Mechanical. Showcase. Autodesk. Autodesk. Designer. SketchBook. Autodesk. Mudbox Vault. Autodesk. Ultimate.

Obliczenia równoległe i rozproszone. Praca zbiorowa pod redakcją Andrzeja Karbowskiego i Ewy Niewiadomskiej-Szynkiewicz

Architektura Systemów Komputerowych. Rozwój architektury komputerów klasy PC

Tworzenie programów równoległych. Krzysztof Banaś Obliczenia równoległe 1

Systemy wbudowane. Uproszczone metody kosyntezy. Wykład 11: Metody kosyntezy systemów wbudowanych

Autor: inż. Wojciech Zatorski Opiekun pracy: dr inż. Krzysztof Małecki

Pytania i odpowiedzi

Architektura komputerów

Jak ujarzmić hydrę czyli programowanie równoległe w Javie. dr hab. Piotr Bała, prof. UW ICM Uniwersytet Warszawski

MESco. Testy skalowalności obliczeń mechanicznych w oparciu o licencje HPC oraz kartę GPU nvidia Tesla c2075. Stanisław Wowra

Programowanie Rozproszone i Równoległe

Klasyfikacja sprzętu i oprogramowania nowoczesnego banku. Informatyka bankowa, AE w Poznaniu, dr Grzegorz Kotliński

Systemy operacyjne i sieci komputerowe Szymon Wilk Superkomputery 1

Wykorzystanie architektury Intel MIC w obliczeniach typu stencil

WYDAJNOŚĆ I SKALOWALNOŚĆ

Rola superkomputerów i modelowania numerycznego we współczesnej fzyce. Gabriel Wlazłowski

Architektura komputerów

Programowanie równoległe i rozproszone. Praca zbiorowa pod redakcją Andrzeja Karbowskiego i Ewy Niewiadomskiej-Szynkiewicz

Klucz do wydajności JBoss. Przemysław Kuźnicki RHC{E,VA} JBCAA B2B Sp. z o.o. pk@bel.pl

Projektowanie nowoczesnych mieszadeł elektromagnetycznych dla pieców łukowych z wykorzystaniem HPC. Mirosław Kupczyk (PCSS) Poznań

Wydajność obliczeń a architektura procesorów

SYSTEMY OPERACYJNE WYKŁAD 1 INTEGRACJA ZE SPRZĘTEM

Podstawy Techniki Mikroprocesorowej wykład 13: MIMD. Dr inż. Jacek Mazurkiewicz Katedra Informatyki Technicznej

Literatura. 3/26/2018 Przetwarzanie równoległe - wstęp 1

HPC na biurku. Wojciech De bski

Programowanie Rozproszone i Równoległe. Edward Görlich goerlich@th.if.uj.edu.pl

Dostęp do europejskich systemów obliczeniowych Tier-0 w ramach PRACE

20. Czy serwerownia spełnia standardowe wymagania techniczne dla takich pomieszczeń?

Metody optymalizacji soft-procesorów NIOS

System pamięci. Pamięć wirtualna

Architektura systemów informatycznych

High Performance Computers in Cyfronet. Andrzej Oziębło Zakopane, marzec 2009

Budowa systemów komputerowych

Co to jest lista top500. Omów mikrotechnologię Core

SZCZEGÓŁOWY OPIS PRZEDMIOTU ZAMÓWIENIA CZĘŚĆ I

Technologia Informacyjna Wykład II Jak wygląda komputer?

Larrabee GPGPU. Zastosowanie, wydajność i porównanie z innymi układami

Bibliografia: pl.wikipedia.org Historia i rodzaje procesorów w firmy Intel

Równoległy algorytm wyznaczania bloków dla cyklicznego problemu przepływowego z przezbrojeniami

Algorytmy Komunikacyjne dla Trójwymiarowych Sieci Opartych na Plastrze Miodu. Ireneusz Szcześniak. Politechnika Śląska 20 czerwca 2002 r.

Przygotowanie kilku wersji kodu zgodnie z wymogami wersji zadania,

O superkomputerach. Marek Grabowski

Procesy i wątki. Krzysztof Banaś Obliczenia równoległe 1

System komputerowy. System komputerowy

Moc płynąca z kart graficznych

Welcome to the waitless world. Inteligentna infrastruktura systemów Power S812LC i S822LC

Budowa komputera Komputer computer computare

Transkrypt:

Miary i pomiary wydajności Krzysztof Banaś Obliczenia Wysokiej Wydajności 1

Jak mierzyć wydajność systemów komputerowych? Cel: określić jak sprawnie (szybko) komputer będzie realizował wyznaczone zadania. Krzysztof Banaś Obliczenia Wysokiej Wydajności 2

Miary wydajności komputerów Miary oparte na charakterystykach sprzętu Częstotliwość zegara Drożność procesora Przepustowość magistrali pamięć-procesor MIPS, MFLOPS (teoretyczne) nie uwzględniają złożoności działania komputerów dla najważniejszych i najpopularniejszych programów użytkowych Krzysztof Banaś Obliczenia Wysokiej Wydajności 3

Miary wydajności komputerów Miary oparte na parametrach wykonania specjalnie zaprojektowanych programów wzorcowych - benchmarków komputerowych Pożądane cechy programów wzorcowych: Pożądane cechy programów wzorcowych: Reprezentatywność (dla danej klasy zastosowań) Przenośność Łatwość dokonania pomiarów Adekwatność miary związanej z benchmarkiem Krzysztof Banaś Obliczenia Wysokiej Wydajności 4

Rodzaje programów wzorcowych Własne: najlepsze, lecz wymagają osobistego testowania, co z kolei wymaga czasu, pieniędzy i dostępu do systemów Nieformalne: opracowywane przez grupy użytkowników (np. LINPACK, STREAM) Przemysłowe: utrzymywane przez organizacje (np. SPEC, TPC), firmy i instytucje Podział ze względu na charakter zadań testowych: Algorytmy - np. LINPACK Aplikacje - np. testy SPEC Specyfikacje - np. testy TPC Krzysztof Banaś Obliczenia Wysokiej Wydajności 5

LINPACK Zadanie testowe: rozwiązanie układu równań liniowych Miary: DP: ilość operacji zmiennoprzecinkowych na sekundę (MFLOPS) w trakcie rozwiązania zadania 100x100 TPP (Toward Peak Performance): jw. dla zadania 1000x1000 z możliwymi modyfikacjami algorytmu Przykłady (komputery jednoprocesorowe - 2006): Intel Pentium Woodcrest (3GHz) DP=3018, TPP=6542, Teor.=12000 (55%) NEC SX-8/1 (2.0GHz) DP=2177, TPP=14960, Teor.=16000 (93.5%) hp rx2020 Itanium 2 (1.6GHz) DP=1761, TPP=5603, Teor.=6400 (87%) Cray 1 (0.08 GHz) DP=12, TPP=110, Teor.=160 (69%) IBM PC XT, 8086 (0.005 GHz) DP = 0.0069 www.netlib.org/performance, performance.netlib.org Krzysztof Banaś Obliczenia Wysokiej Wydajności 6

LINPACK Parallel Podobnie jak LINPACK, lecz rozmiar układu równań i metoda rozwiązania dowolne. Przykłady (z listy Top500-2006): System N proc N max R max IBM, BlueGene/L 131072 1769471 280600 Cray, Red Storm, Opteron 26544 1700000 101400 IBM, eserver pseries p5 12208 1383600 75760 N proc - liczba procesorów N max - rozmiar układu dla którego dokonano pomiaru (największego układu rozwiązanego na maszynie) R max - wydajność w Mflop/s przy rozwiązaniu układu Krzysztof Banaś Obliczenia Wysokiej Wydajności 7

Lista Top 500 Krzysztof Banaś Obliczenia Wysokiej Wydajności 8

Top 500 - efektywność Krzysztof Banaś Obliczenia Wysokiej Wydajności 9

Top 500 wydajność na jednostkę energii Krzysztof Banaś Obliczenia Wysokiej Wydajności 10

STREAM STREAM jest wzorcem syntetycznym zaproponowanym przez J.D.McCalpina, który mimo swojej prostoty został powszechnie zaakceptowany i jest stosowany jako istotna miara wydajności układów pamięć-procesor STREAM mierzy czas działania niezwykle długich pętli zawierających w pojedynczej operacji niezwykle proste operacje na pojedynczych elementach długich tablic Ze względu na prostotę operacji czas działania procesora w małym stopniu determinuje czas realizacji pętli, jest on praktycznie w całości określany przez szybkość łączy komunikacyjnych pamięć-procesor Krzysztof Banaś Obliczenia Wysokiej Wydajności 11

STREAM STREAM mierzy czas realizacji czterech pętli, wykonujących kolejno: kopiowanie wektora, kopiowanie ze skalowaniem wektora, dodawanie wektorów i operację AXPY (triada) Czas realizacji pętli wraz ze znaną liczbą odniesień do pamięci pozwala na oszacowanie przepustowości pamięci w GB/s Przepustowość zakłada optymalne wykorzystanie hierarchii pamięci, dla którego każda liczba pobrana do pamięci podręcznej jest wykorzystywana w obliczeniach (obliczenia zakładają, że każda liczba jest potrzebna tylko raz, więc nie da się dalej optymalizować algorytmu) Na podstawie przepustowości pamięci można obliczyć średni czas dostępu do pojedynczej danej w teście: średni czas dostępu [ns] = rozmiar danych [B] / przepustowość [GB/s] Krzysztof Banaś Obliczenia Wysokiej Wydajności 12

STREAM2 Extensions of the STREAM benchmark for the future are currently being considered. The main issues that need to be addressed are: * Memory Hierarchies: STREAM needs to be extended to measure bandwidths at each level of the memory hierarchy. * Latency: Bandwidth and Latency are a powerful pair of descriptors for memory systems -- Latency measurements should be added. * Access Patterns: Currently STREAM measures only unit-stride performance. This is easy and sensible, but non-unit stride and irregular/indirect performance are an important piece of the memory system performance picture. * Locality: Many new machines are being developed with physically distributed main memory. STREAM may be enhanced to measure bandwidth/latency between "nodes" of distributed shared memory systems. A "second-generation" STREAM benchmark (STREAM2) is being evaluated, with the source code and some results available at the STREAM2 page. STREAM2 emphases measurements across all levels of the memory hierarchy, and tries to focus on the difference between read and write performance in memory systems. Krzysztof Banaś Obliczenia Wysokiej Wydajności 13

Krzysztof Banaś Obliczenia Wysokiej Wydajności 14

SPEC Standard Performance Evaluation Corporation Cel: Ustanowienie, utrzymywanie i wspieranie standardowego zbioru stosownych wzorców i miar do oceny wydajności nowoczesnych systemów komputerowych. Konsorcjum producentów sprzętu i oprogramowania, konsultantów, użytkowników i naukowców Wzorce testujące wybrane komponenty systemów (procesor, pamięć, układ we/wy, sieć, grafika, system operacyjny, kompilatory, serwery aplikacji) Obiektywność i wiarygodność wzorców i miar - ścisłe reguły Popularność - także wśród producentów; duża baza danych www.spec.org Krzysztof Banaś Obliczenia Wysokiej Wydajności 15

Krzysztof Banaś Obliczenia Wysokiej Wydajności 16

SPEC CPU2006 Test procesora, systemu pamięci i kompilatora Pomiar szybkości i przepustowości 12 zadań bez obliczeń zmiennoprzecinkowych (m.in. kompilatory, interpretery, przetwarzanie tekstu - podstawa miary CINT2006 18 zadań z obliczeniami zmiennoprzecinkowymi (głównie symulacje zagadnień fizycznych, m.in. za pomocą MES) - podstawa miary CFP2006 Języki: C, C++, Fortran Krzysztof Banaś Obliczenia Wysokiej Wydajności 17

Charakterystyka programów SPECint Name Description IC 10 9 CPI Tc (ns) Exec time Ref time SPECratio perl Interpreted string processing 2,118 0.75 0.40 637 9,777 15.3 bzip2 Block-sorting compression 2,389 0.85 0.40 817 9,650 11.8 gcc GNU C Compiler 1,050 1.72 0.47 24 8,050 11.1 mcf Combinatorial optimization 336 10.00 0.40 1,345 9,120 6.8 go Go game (AI) 1,658 1.09 0.40 721 10,490 14.6 hmmer Search gene sequence 2,783 0.80 0.40 890 9,330 10.5 sjeng Chess game (AI) 2,176 0.96 0.48 37 12,100 14.5 libquantum Quantum computer simulation 1,623 1.61 0.40 1,047 20,720 19.8 h264avc Video compression 3,102 0.80 0.40 993 22,130 22.3 omnetpp Discrete event simulation 587 2.94 0.40 690 6,250 9.1 astar Games/path finding 1,082 1.79 0.40 773 7,020 9.1 xalancbmk XML parsing 1,058 2.70 0.40 1,143 6,900 6.0 Geometric mean 11.7 Krzysztof Banaś Obliczenia Wysokiej Wydajności 18

SPEC CPU2006 Miary: średnia geometryczna stosunków czasu wykonania programów do odpowiednich czasów odniesienia Szybkość komputerów: SPECint2006: agresywna optymalizacja SPECint_base2006: zachowawcza optymalizacja Przepustowość komputerów równoległych SPECint_rate2006: agresywna optymaliazcja SPECint_rate_base2006: zachowawcza optymalizacja (podobnie cztery miary dla CFP2006: SPECfp2006, SPECfp_base2006, SPECfp_rate2006, SPECfp_rate_base2006) Krzysztof Banaś Obliczenia Wysokiej Wydajności 19

Krzysztof Banaś Obliczenia Wysokiej Wydajności 20

Krzysztof Banaś Obliczenia Wysokiej Wydajności 21

SPEC CPU2006 przykładowe wyniki Procesor SPECint SPECint_base gcc gcc_base Xeon 5160, 3GHz 18.1 17.5 13.7 13.2 Itanium2, 1.6 GHz 15.2 14.0 11.4 10.5 Opteron, 2.6 GHz 12.9 11.6 11.2 9.3 Procesor SPECfp SPECfp_base bwave bwave_base Xeon 5160, 3GHz 15.6 15.3 19.1 19.0 Itanium2, 1.6 GHz 17.7 16.9 38.5 38.5 Opteron, 2.6 GHz 15.4 12.5 55.6 17.5 Krzysztof Banaś Obliczenia Wysokiej Wydajności 22

Inne wzorce SPEC SPECapc, SPECviewperf - testy grafiki dla procedur bibliotecznych OpenGL i konkretnych programów (3ds Max, Maya, Solid Edge, Solid Works i inne) SPEC HPC2002, SPEC OMP2001, SPEC MPI2006 - testy komputerów równoległych (drugi dla środowiska OpenMP; ostatni, dla środowiska MPI, jeszcze w fazie organizacji) SPECjAppServer2004, SPEC JBB2005, SPEC JVM98 - testy komputerów jako serwerów i klientów środowiska Javy SPEC MAIL2001 - test komputerów jako serwerów poczty elektronicznej SPEC SFS97 - test komputerów jako serwerów plików SPEC WEB2005 - testy komputerów jako serwerów WWW SPEC POWER test wydajności energetycznej Krzysztof Banaś Obliczenia Wysokiej Wydajności 23

TPC Transaction Processing Performance Council "TPC definiuje wzorce dla przetwarzania transakcji i baz danych oraz dostarcza przemysłowi wiarygodne wyniki" Symulacje rzeczywistych środowisk przemysłowych Określanie warunków wykonania zadania (specyfikacji) zamiast konkretnych programów i baz danych Wszechstronny pomiar systemów komputerowych: interfejs użytkownika, układy we/wy, systemy dyskowe, układy komunikacji, zabezpieczenia systemu Krzysztof Banaś Obliczenia Wysokiej Wydajności 24

Krzysztof Banaś Obliczenia Wysokiej Wydajności 25

Wzorce TPC TPC-C - wzorzec dla bezpośredniego przetwarzania transakcji. Grupa użytkowników wykonuje typowe transakcje względem bazy danych w środowisku przetwarzania zamówień. Miara: ilość transakcji nowych zamówień na minutę (tpmc) i koszt transakcji ($/tpmc) - koszt uwzględnia zakup i pięcioletnią eksploatację systemu TPC-H - wzorzec dla systemów podejmowania decyzji. Miara: ilość zapytań na godzinę (QphH@Size) TPC-App - wzorzec dla serwerów aplikacji i serwerów WWW inne (wiele już przestarzałych) Krzysztof Banaś Obliczenia Wysokiej Wydajności 26

Inne wzorce Dhrystone, Whetstone - wczesne wzorce syntetyczne (nie oparte o rzeczywiste programy użytkowe) NAS: równoległy wzorzec NASA, jądra programów - science.nas.nasa.gov/software/npb Wzorce producentów oprogramowania - SAP, BAAN Wzorce ukierunkowane na grafikę 3DMARK Zestawy programów diagnostycznych i mierzących różne aspekty wydajności SANDRA Gry Programy użytkowe (np. programy kompresji/dekompresji, szyfrowania, itp.)... Krzysztof Banaś Obliczenia Wysokiej Wydajności 27