Performance Evaluation

Podobne dokumenty
Page 1. Prawo Amdhala. Prawo Gustafsona. P p * P p * P P P. Performance Evaluation

Helena Boguta, klasa 8W, rok szkolny 2018/2019

Proposal of thesis topic for mgr in. (MSE) programme in Telecommunications and Computer Science

Zakopane, plan miasta: Skala ok. 1: = City map (Polish Edition)

Tychy, plan miasta: Skala 1: (Polish Edition)

Weronika Mysliwiec, klasa 8W, rok szkolny 2018/2019

Revenue Maximization. Sept. 25, 2018

Wojewodztwo Koszalinskie: Obiekty i walory krajoznawcze (Inwentaryzacja krajoznawcza Polski) (Polish Edition)

Hard-Margin Support Vector Machines

Machine Learning for Data Science (CS4786) Lecture11. Random Projections & Canonical Correlation Analysis

Metodyki projektowania i modelowania systemów Cyganek & Kasperek & Rajda 2013 Katedra Elektroniki AGH

Stargard Szczecinski i okolice (Polish Edition)

Zarządzanie sieciami telekomunikacyjnymi

MaPlan Sp. z O.O. Click here if your download doesn"t start automatically

Miedzy legenda a historia: Szlakiem piastowskim z Poznania do Gniezna (Biblioteka Kroniki Wielkopolski) (Polish Edition)

Rozpoznawanie twarzy metodą PCA Michał Bereta 1. Testowanie statystycznej istotności różnic między jakością klasyfikatorów

TTIC 31210: Advanced Natural Language Processing. Kevin Gimpel Spring Lecture 9: Inference in Structured Prediction

Karpacz, plan miasta 1:10 000: Panorama Karkonoszy, mapa szlakow turystycznych (Polish Edition)

Machine Learning for Data Science (CS4786) Lecture 11. Spectral Embedding + Clustering

ERASMUS + : Trail of extinct and active volcanoes, earthquakes through Europe. SURVEY TO STUDENTS.

deep learning for NLP (5 lectures)

Towards Stability Analysis of Data Transport Mechanisms: a Fluid Model and an Application

SSW1.1, HFW Fry #20, Zeno #25 Benchmark: Qtr.1. Fry #65, Zeno #67. like

Few-fermion thermometry

ARNOLD. EDUKACJA KULTURYSTY (POLSKA WERSJA JEZYKOWA) BY DOUGLAS KENT HALL

CEE 111/211 Agenda Feb 17

Aktualizacja Oprogramowania Firmowego (Fleszowanie) Microprocessor Firmware Upgrade (Firmware downloading)

Machine Learning for Data Science (CS4786) Lecture 24. Differential Privacy and Re-useable Holdout

Gradient Coding using the Stochastic Block Model

Linear Classification and Logistic Regression. Pascal Fua IC-CVLab

TTIC 31210: Advanced Natural Language Processing. Kevin Gimpel Spring Lecture 8: Structured PredicCon 2

Installation of EuroCert software for qualified electronic signature

Planning and Cabling Networks

Katowice, plan miasta: Skala 1: = City map = Stadtplan (Polish Edition)

Dolny Slask 1: , mapa turystycznosamochodowa: Plan Wroclawia (Polish Edition)

Wojewodztwo Koszalinskie: Obiekty i walory krajoznawcze (Inwentaryzacja krajoznawcza Polski) (Polish Edition)

Zmiany techniczne wprowadzone w wersji Comarch ERP Altum

Analiza ilościowa w przetwarzaniu równoległym

Wojewodztwo Koszalinskie: Obiekty i walory krajoznawcze (Inwentaryzacja krajoznawcza Polski) (Polish Edition)

Wojewodztwo Koszalinskie: Obiekty i walory krajoznawcze (Inwentaryzacja krajoznawcza Polski) (Polish Edition)

Wprowadzenie do programu RapidMiner, część 2 Michał Bereta 1. Wykorzystanie wykresu ROC do porównania modeli klasyfikatorów

Extraclass. Football Men. Season 2009/10 - Autumn round

Fig 5 Spectrograms of the original signal (top) extracted shaft-related GAD components (middle) and

Network Services for Spatial Data in European Geo-Portals and their Compliance with ISO and OGC Standards

y = The Chain Rule Show all work. No calculator unless otherwise stated. If asked to Explain your answer, write in complete sentences.

DODATKOWE ĆWICZENIA EGZAMINACYJNE

Instrukcja obsługi User s manual

Analysis of Movie Profitability STAT 469 IN CLASS ANALYSIS #2

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

Blow-Up: Photographs in the Time of Tumult; Black and White Photography Festival Zakopane Warszawa 2002 / Powiekszenie: Fotografie w czasach zgielku

Emilka szuka swojej gwiazdy / Emily Climbs (Emily, #2)

Ankiety Nowe funkcje! Pomoc Twoje konto Wyloguj. BIODIVERSITY OF RIVERS: Survey to students

Miary Wydajności. Efektywność programu równoległego (E) jest definiowana jako stosunek przyśpieszenia do liczby procesorów

Zaawansowane metody programowania. Algorytmy

you see decision. oznacza to, Whenever kiedy widzisz biznes, someone once made Za każdym razem, który odnosi sukces,

Analiza efektywności przetwarzania współbieżnego. Wykład: Przetwarzanie Równoległe Politechnika Poznańska Rafał Walkowiak Grudzień 2015

MS Visual Studio 2005 Team Suite - Performance Tool


Cracow University of Economics Poland. Overview. Sources of Real GDP per Capita Growth: Polish Regional-Macroeconomic Dimensions

Arrays -II. Arrays. Outline ECE Cal Poly Pomona Electrical & Computer Engineering. Introduction

LEARNING AGREEMENT FOR STUDIES

Egzamin maturalny z języka angielskiego na poziomie dwujęzycznym Rozmowa wstępna (wyłącznie dla egzaminującego)

OpenPoland.net API Documentation

Jak zasada Pareto może pomóc Ci w nauce języków obcych?

OBWIESZCZENIE MINISTRA INFRASTRUKTURY. z dnia 18 kwietnia 2005 r.

OSI Transport Layer. Network Fundamentals Chapter 4. Version Cisco Systems, Inc. All rights reserved. Cisco Public 1


Page 1. Pięcio-krokowy pipeline

Życie za granicą Studia

POLITYKA PRYWATNOŚCI / PRIVACY POLICY

European Crime Prevention Award (ECPA) Annex I - new version 2014

USB firmware changing guide. Zmiana oprogramowania za przy użyciu połączenia USB. Changelog / Lista Zmian

USB firmware changing guide. Zmiana oprogramowania za przy użyciu połączenia USB. Changelog / Lista Zmian

Krytyczne czynniki sukcesu w zarządzaniu projektami

Latent Dirichlet Allocation Models and their Evaluation IT for Practice 2016

Rev Źródło:

Why do I need a CSIRT?

EGARA Adam Małyszko FORS. POLAND - KRAKÓW r

SG-MICRO... SPRĘŻYNY GAZOWE P.103

Knovel Math: Jakość produktu

Pielgrzymka do Ojczyzny: Przemowienia i homilie Ojca Swietego Jana Pawla II (Jan Pawel II-- pierwszy Polak na Stolicy Piotrowej) (Polish Edition)

Analiza efektywności przetwarzania współbieżnego

MDK-Plus. Licencja Node-Locked 8260 EUR 5740 EUR 3340 EUR gratis 3300 EUR 2300 EUR 1330 EUR 650 EUR 3970 EUR 2760 EUR 1600 EUR

Financial support for start-uppres. Where to get money? - Equity. - Credit. - Local Labor Office - Six times the national average wage (22000 zł)

LED PAR 56 7*10W RGBW 4in1 SLIM

Ankiety Nowe funkcje! Pomoc Twoje konto Wyloguj. BIODIVERSITY OF RIVERS: Survey to teachers

Test sprawdzający znajomość języka angielskiego

No matter how much you have, it matters how much you need

Wojewodztwo Koszalinskie: Obiekty i walory krajoznawcze (Inwentaryzacja krajoznawcza Polski) (Polish Edition)

Previously on CSCI 4622

Wprowadzenie do programu RapidMiner, część 5 Michał Bereta

USB firmware changing guide. Zmiana oprogramowania za przy użyciu połączenia USB. Changelog / Lista Zmian

PSB dla masazystow. Praca Zbiorowa. Click here if your download doesn"t start automatically

F-16 VIRTUAL COCKPIT PROJECT OF COMPUTER-AIDED LEARNING APPLICATION WEAPON SYSTEM POWER ON PROCEDURE

Dolny Slask 1: , mapa turystycznosamochodowa: Plan Wroclawia (Polish Edition)

Testy jednostkowe - zastosowanie oprogramowania JUNIT 4.0 Zofia Kruczkiewicz

Miedzy legenda a historia: Szlakiem piastowskim z Poznania do Gniezna (Biblioteka Kroniki Wielkopolski) (Polish Edition)


Wojewodztwo Koszalinskie: Obiekty i walory krajoznawcze (Inwentaryzacja krajoznawcza Polski) (Polish Edition)

Transkrypt:

Performance Evaluation When using parallel system the goal of design process is not to optimise a single metric such as a speed. A good design must optimise a problem-specific function of execution time, memory requirements, implementation cost, maintenance cost, resource utilization, etc. The result depends on: used algorithm, computer architecture, execution environment, programming language, etc. The analysis which can be used for application evaluation can be carried out analytically or by experiments When using experimental evaluation we need to measure the run time of sequential and parallel programs Is it possible to evaluate parallel program by executing only parallel version of the program on parallel computer? 1 1

Prawo Amdhala Kiedy wykonujemy program równoległy możemy wyróżnić dwie części: część sekwencyjną (Pseq), która musi się wykonywać tylko na jednym procesorze oraz część równoległą (1-Pseq), która jest wykonywana niezależnie na wielu procesorach. Załóżmy, że jeśli wykonujemy ten program na jednym procesorze czas jego wykonania wynosi t 1 (czas wykonania sekwencyjnego). Niech p oznacza liczbę procesorów użytych podczas równoległego wykonania programu, wtedy jego czas wykonania równoległego wyraża się wzorem: T t * P ( 1 P ) t / p par 1 seq seq 1 Stąd przyspieszenie wyraża się wzorem S t1 1 t * P ( 1 P ) * t / p P 1 seq seq 1 seq 2 2

Prawo Gustafsona Załóżmy, że czas wykonania programu równoległego z uzyciem p procesorów wyraża się wzorem Pseq + Ppar = 1, gdzie Pseq oznacza sekwencyjną część programu, a Ppar równoległą. Czas wykonania sekwencyjnego (z użyciem jednego procesora) wynosi Pseq + p*ppar Stąd otrzymujemy następująca formułę na przyspieszenie S G P p * P seq P seq P par par P p * P p * P seq par par 3 3

Amdahl s Law hardware approach Amdahl s Law states that the performance improvement to be gained from using some faster mode of execution is limited by the fraction of the time the faster mode can be used. Amdahl s Law defines the speedup that can be gained by using a particular feature. 4 4

What is speedup? Suppose that we can make an enhancement to a machine that will improve performance when it is used. Speedup is the ratio: Alternatively Speedup tells us how much faster a task will run using the machine with the enhancement as opposed to the original one 5 5

What Amdahl s Law says? Amdahl s Law gives us a quick way to find the speedup from some enhancement, which depends on two factors: The fraction of the computation time in the original machine that can be converted to take advantage of the enhancement For example, if 20 seconds of the execution time of a program that takes 60 seconds in total can use an enhancement, the fraction is 20/60. This value, which we will call Fraction enhanced, is always less than or equal to 1. The improvement gained by the enhanced execution mode; that is, how much faster the task would run if the enhanced mode were used for the entire program This value is the time of the original mode over the time of the enhanced mode: If the enhanced mode takes 2 seconds for some portion of the program that can completely use the mode, while the original mode took 5 seconds for the same portion, the improvement is 5/2. We will call this value, which is always greater than 1, speedup (enhanced). 6 6

How we calculate a speedup? The execution time using the original machine with the enhanced mode will be the time spent using the unenhanced portion of the machine plus the time spent using the enhancement: The overall speedup is the ratio of the execution times: 7 7

An Example Suppose that we are considering an enhancement to the processor of a server system used for Web serving. The new CPU is 10 times faster on computation in the Web serving application than the original processor. Assuming that the original CPU is busy with computation 40% of the time and is waiting for I/O 60% of the time, what is the overall speedup gained by incorporating the enhancement? 8 8

An Example Implementations of floating-point (FP) square root vary significantly in performance, especially among processors designed for graphics. Suppose FP square root (FPSQR) is responsible for 20% of the execution time of a critical graphics benchmark. One proposal is to enhance the FPSQR hardware and speedup this operation by a factor of 10. The other alternative is just to try to make all FP instructions in the graphics processor run faster by a factor of 1.6. FP instructions are responsible for a total of 50% of the execution time for the application. The design team believes that they can make all FP instructions run 1.6 times faster with the same effort as required for the fast square root. 9 9

Execution efficiency One of the most important characteristics of a parallel application execution: Sp( p) E( p) p T(1) T( p) p Useful for resource allocation, application scheduling, load balancing, execution time prediction etc. Information about the runtime on a single processor required 10 10

Skalowalność Systemów Równoległych Rozważmy problem dodawania n liczb z wykorzystaniem architektury Hypercube W pierwszym kroku każdy z procesorów dodaje lokalnie n/p liczb, w kolejnych krokach połowa z wyliczonych sum częściowych jest przesyłana do sąsiednich procesorów i następnie wykonywana jest operacja dodawania. Procedura się kończy gdy jeden wyróżniony procesor wyliczy sumę końcową (p oznacza liczbę procesorów) Załóżmy, że czasy dodania dwóch liczb oraz komunikacji pomiędzy sąsiednimi procesorami są równe i wynoszą jedną umowną jednostkę czasu. Stąd dodanie n/p liczb na każdym z procesorów wynosi n/p - 1 Podobnie p sum częściowych jest dodawanych w log 2 p krokach (jedno dodawanie i jedno przesłanie) 11 11

Skalowalność Systemów Równoległych Stąd łączny czas przetwarzania równoległego może być aproksymowany przez: Ponieważ czas wykonania sekwencyjnego można aproksymować przez n wzory na przyspieszenie i efektywność są następujące: S n * p n 2 plog p T n p p 2log p E n n 2 p log p Powyższe równania mogą być użyte do wyliczenia przyspieszenia i efektywności dla każdej pary n i p. 12 12

Skalowalność Systemów Równoległych zależność liniowa n = 512 n = 320 n = 192 S n = 64 p Przyśpieszenie w funkcji liczby procesorów 13 13

Skalowalność Systemów Równoległych Efektywność jako funkcja n i p n p = 1 p = 4 p = 8 p = 16 p = 32 64 1.0 0.80 0.57 0.33 0.17 192 1.0 0.92 0.80 0.60 0.38 320 1.0 0.95 0.87 0.71 0.50 512 1.0 0.97 0.91 0.80 0.62 Dla danego problemu o stałym rozmiarze, przyspieszenie nie rośnie liniowo wraz ze zwiększającą się liczba procesorów Dla stałej liczby procesorów rośnie przyspieszenie i efektywność gdy zwiększamy rozmiaru problemu. 14 14

Skalowalność Systemów Równoległych System równoległy jest skalowalny jeśli utrzymuje stałą efektywność przy jednoczesnym zwiększanie się liczby procesorów oraz rozmiaru problemu. Skalowalność systemu równoległego jest miarą jego zdolności do zwiększenia przyśpieszenia proporcjonalnie do liczby procesorów. Skalowalność odzwierciedla zdolność systemu równoległego do efektywnego wykorzystania zwiększającej się liczby procesorów. 15 15

Scalability Scalable programs remain efficient for large number of processors 16 16

Scalability The scalability of a parallel application shows the relation between application execution time and the number of application utilized resources (nodes) Scalability is referred to as strong when an application input problem size stays constant independently from the number of compute nodes which are utilized to solve the problem Scalability is referred to as weak when the input problem size of the application is fixed for each utilized computer nodes 17 17

Scalability Strong scalability is related to Amdahl Law Speedup ( n) T(1) T( n) (1 1 p) p n 18 Weak scalability is related to Gustafson Law T(1) Speedup ( n) 1 ( n 1) p* T( n) 18

Granularity 19 A study of granularity is important if one is going to choose the most efficient architecture of parallel hardware for the algorithm at hand The granularity of a parallel computer is defined as a ratio of the time required for a basic communication operation to the time required for a basic computation operation. Basing on that definition the parallel computers can be classified by three relative values: coarse-grain, medium-grain and fine-grain. For parallel algorithms granularity is defined as a number of instructions that can be performed concurrently before some form of synchronisation needs to take place. From the other hand the granularity of the parallel algorithm can be defined as a relative measure of the ratio of the amount of computation to the amount of communication within a parallel algorithm implementation T G T COMP COMM

Performance Evaluation Using Granularity The parallel run time is composed as average of three different components: computation time, communication time and idle time, so it can be expressed by the following expression: T 1 p1 p1 p1 i i i ( Tcomp Tcomm Tidle ) p i0 i0 i0 20 Let s define the overhead function as follows: T ( W, p) p* T W o where W represents the problem size, Tp time of parallel program execution and p a number of processors. p

Performance Evaluation Using Granularity The problem size is defined as a number of basic computation operation required to solve the problem using the best serial algorithm. Let s assume that one basic computation operation takes one unit of time. It causes that the problem size is equal to the time of performing the best serial algorithm on a serial computer. Then after rewriting above equitation the parallel run time is expressed by: T p W To ( W, p) p The resulting expressions for efficiency takes the form: E 1 1 To ( W, p) W 21

Performance Evaluation Using Granularity When assuming that the main overhead during parallel program execution is communication time we can rewrite equation for efficiency in the following way: E 1 T 1 TOTAL _ COMM The total communication time is equal to sum of communication time of all performed communication steps. W T p T TOTAL _ COMM * COMM 22

Performance Evaluation Using Granularity The problem size W is equal to the time performing the best serial algorithm is: W p * T COMP By substituting problem size and total communication time by above equations we get: E 1 1 T T COMM COMP 1 G 1 G 1 1 G It means that using granularity it is possible to evaluate parallel program using such metrics like efficiency and speedup by executing only parallel version of program on parallel computer. 23

Used speedup and efficiency are relative - it means that Tseq is the execution time of parallel algorithm executing on one of the processors of parallel computer Isogranularity instead of granularity were used G T The results were normalised, using the idea of virtual processor T COMM COMP T IDLE VP( p) p i 1 Si Speedup S vt S VP( p) 1 24