Zadania jednorodne 5.A.Modele przetwarzania równoległego

Slides:



Advertisements
Podobne prezentacje
OBLICZENIA NUMERYCZNE
Advertisements

Modelowanie i symulacja
TRADYCYJNE METODY PLANOWANIA I ORGANIZACJI PROCESÓW PRODUKCYJNYCH
ANALIZA SIECIOWA PRZEDSIĘWZIĘĆ konstrukcja harmonogramu
Wykład 5: Dyskretna Transformata Fouriera, FFT i Algorytm Goertzela
Metody badania stabilności Lapunowa
Wybrane zastosowania programowania liniowego
Programowanie sieciowe
Zadanie z dekompozycji
Badania operacyjne. Wykład 2
Zrównoleglanie programu sekwencyjnego
Wprowadzenie System rozproszony jest kolekcją niezależnych, autonomicznych komputerów, które dla użytkownika prezentują się jak jeden komputer. Można wyróżnic.
Sieci komputerowe Model warstwowy OSI Piotr Górczyński 20/09/2003.
Architektura systemu Gra strategiczna „Strusia Jama”
Urządzenia sieciowe Topologie sieci Standardy sieci Koniec.
Rozwiązywanie układów
Wpływ warunków na niewiadome na wyniki wyrównania.
Wstęp do interpretacji algorytmów
OPORNOŚĆ HYDRAULICZNA, CHARAKTERYSTYKA PRZEPŁYWU
UKŁADY SZEREGOWO-RÓWNOLEGŁE
Zagadnienia do egzaminu z wykładu z Mechaniki Płynów 2
Zagadnienia do egzaminu z wykładu z Mechaniki Płynów
Zagadnienia do egzaminu z wykładu z Technicznej Mechaniki Płynów
Opracował: mgr Mariusz Bruździński
Paweł Stasiak Radosław Sobieraj Michał Wronko
Zastosowanie technologii CUDA w sztucznej inteligencji
Komputer a system komputerowy
Metody Lapunowa badania stabilności
Obserwatory zredukowane
Stabilność Stabilność to jedno z najważniejszych pojęć teorii sterowania W większości przypadków, stabilność jest warunkiem koniecznym praktycznego zastosowania.
AUTOMATYKA i ROBOTYKA (wykład 5)
Systemy operacyjne.
Elementy Rachunku Prawdopodobieństwa i Statystyki
Zadanie programowania liniowego PL dla ograniczeń mniejszościowych
Topologie sieci lokalnych.
Rezystancja zastępcza, połączenie trójkąt-gwiazda
Modelowanie matematyczne jako podstawa obliczeń naukowo-technicznych:
Model I/O bazujący na HSWN Problem uczenia sieci HSWN
Teoria sterowania 2011/2012Stabilno ść Kazimierz Duzinkiewicz, dr hab. in ż. Katedra In ż ynierii Systemów Sterowania 1 Stabilność Stabilność to jedno.
Buforowanie D e f i n i c j a.
Koncepcja procesu Zadanie i proces. Definicja procesu Process – to program w trakcie wykonywania; wykonanie procesu musi przebiegać w sposób sekwencyjny.
Dana jest sieć dystrybucji wody w postaci: Ø      m- węzłów,
Sieci komputerowe Anna Wysocka.
Sterowanie – metody alokacji biegunów II
ADRES IP – unikatowy numer przyporządkowany urządzeniom sieci komputerowych. Adres IPv4 składa się z 32 bitów podzielonych na 4 oktety po 8 bitów każdy.
MECHANIKA 2 Wykład Nr 10 MOMENT BEZWŁADNOŚCI.
Modelowanie i identyfikacja 2013/2014 Identyfikacja rekursywna i nieliniowa I 1 Katedra Inżynierii Systemów Sterowania  Kazimierz Duzinkiewicz, dr hab.
Sieci komputerowe.
Systemy operacyjne i sieci komputerowe
Systemy rozproszone  Rozdzielenie obliczeń między wiele fizycznych procesorów.  Systemy luźno powiązane – każdy procesor ma lokalną pamięć; procesory.
Procesor – charakterystyka elementów systemu. Parametry procesora.
Przedmiot: Ekonometria Temat: Szeregi czasowe. Dekompozycja szeregów
Sieci komputerowe Model warstwowy OSI.
Długość cyklu produkcyjnego
Warstwowe sieci jednokierunkowe – perceptrony wielowarstwowe
Wstęp do interpretacji algorytmów
Systemy operacyjne i sieci komputerowe DZIAŁ : Systemy operacyjne i sieci komputerowe Informatyka Zakres rozszerzony Zebrał i opracował : Maciej Belcarz.
Model warstwowy ISO-OSI
Algorytmy. Co to jest algorytm? Przepis prowadzący do rozwiązania zadania.
© Prof. Antoni Kozioł, Wydział Chemiczny Politechniki Wrocławskiej MATEMATYCZNE MODELOWANIE PROCESÓW BIOTECHNOLOGICZNYCH Temat – 5 Modelowanie różniczkowe.
WYSZUKIWANIE I OPTYMALIZACJA TRAS DLA URZĄDZEŃ MOBILNYCH ANDROID W OPARCIU O SIEĆ/GRAF DOSTĘPNYCH DRÓG Piotr Dąbrowski, Tomasz Pyśk, Piotr Wojciechowski.
Treść dzisiejszego wykładu l Postać standardowa zadania PL. l Zmienne dodatkowe w zadaniu PL. l Metoda simpleks –wymagania metody simpleks, –tablica simpleksowa.
STATYSTYKA – kurs podstawowy wykład 11
TOPOLOGIE SIECI. Topologia sieci- określa sposób połączenia urządzeń sieciowych ze sobą. Najbardziej znane topologie:  Topologia magistrali  Topologia.
Podstawy automatyki I Wykład 3b /2016
Modelowanie i podstawy identyfikacji
Topologie fizyczne i logiczne sieci
Metody matematyczne w Inżynierii Chemicznej
Co do tej pory robiliśmy:
UKŁADY SZEREGOWO-RÓWNOLEGŁE
Zapis prezentacji:

Zadania jednorodne 5.A.Modele przetwarzania równoległego Rafał Walkowiak Przetwarzanie równoległe Politechnika Poznańska

Model zadania jednorodnego Zadanie podzielne Zadanie podzielne (ang. divisible task) – może zostać podzielone na części o dowolnym rozmiarze, które mogą być przetwarzane współbieżnie i niezależnie od siebie. W aplikacjach równoległych mieszczących się w kategorii zadań podzielnych nie występują zależności kolejnościowe między zadaniami oraz zadania mogą mieć niewielki rozmiar. Model zadania jednorodnego

Model zadania jednorodnego Parametry modelu (1) m - liczba komputerów - procesor, pamięć, podsystem komunikacyjny (sprzęt lub oprogramowanie) - węzeł przetwarzający. Komputer posiadający dedykowany układ komunikacyjny może równocześnie realizować przetwarzanie i komunikację. Komputery - węzły przetwarzające są oznaczone przez Pi. Jeżeli nie podano inaczej P1 posiada wszystkie dane na początku przetwarzania. V – dane do przetworzenia (miara pracy do wykonania) znajdujące się w wyróżnionym jednym węźle przetwarzającym. i – wielkość danych przetwarzana na procesorze Pi –  i =V Model zadania jednorodnego

Model zadania jednorodnego Parametry modelu (2) Ai – czas przetwarzania jednostki danych - odwrotność prędkości dla Pi Ai i – czas przetwarzania danych i na procesorze Pi Si+ i Ci – czas przesyłania i jednostek danych pomiędzy dwoma procesorami, Si – czas zainicjowania transmisji, Ci – współczynnik prędkości transmisji – odwrotność prędkości. Model zadania jednorodnego

Optymalizacja czasu przetwarzania równoległego Minimalizacja czasu przetwarzania (obliczeń i komunikacji) danych w systemie składającym się z określonej liczby węzłów przetwarzających tworzących z siecią połączeń komunikacyjnych określoną architekturę systemu równoległego. Optymalizacja uwzględnia: możliwy, dowolny(optymalny) lub określony sposób rozsyłania danych kolejność przesłań, trasa komunikatu jedno- lub wielo- krotne zrównoleglenie obliczeń i komunikacji, jedno- lub wielo- krotne rozsyłanie do każdego z węzłów. Model zadania jednorodnego

Szeregowanie zadań jednorodnych w sieci komputerów Zakładamy, ze wyniki nie są zwracane do węzła będącego źródłem danych. Rozszerzenie uwzględniające zbieranie wyników może być łatwo wprowadzone i nie wpływa znacząco na złożoność metody. Zakończenie przetwarzania poszczególnych procesorów uczestniczących w obliczeniach następuje możliwie równocześnie. Różnice wynikają z ziarnistości danych. Model zadania jednorodnego

Łańcuch procesorów równoczesne przetwarzanie i komunikacja Komunikacja i przetwarzanie w łańcuchu procesorów Dane nieprzetwarzane przez pierwszy procesor są przesyłane do następnego, ten z kolei dzieli je na przetwarzane lokalnie i przesyłane dalej, które przesyła do następnego wolnego procesora. Przetwarzanie na wysyłającym dane procesorze trwa tak długo jak wysyłanie danych do następnego i przetwarzanie danych na następnym procesorze. Model zadania jednorodnego

Łańcuch procesorów równoczesne przetwarzanie i komunikacja - równania Model- wersja ciągła: Optymalizacja czasu przetwarzania równoznaczna z jednoczesnym zakończeniem obliczeń na wszystkich biorących w przetwarzaniu procesorach – jeżeli któryś liczyłby dłużej ... iAi=Si+(i+1+...+ m)Ci+ i+1Ai+1 i=1,..,m V= 1+ 2+...+ m 1, 2,.., m  0 Jeśli brak rozwiązania to założona została zbyt duża liczba procesorów. Model zadania jednorodnego

Łańcuch procesorów równoczesne przetwarzanie i komunikacja - równania Model matematyczny wersja dyskretna: Minimalizacja czasu pracy najdłużej pracującego procesora: Min T T  Ti T1 = 1A1 T2 = x2 S1 +(V-1)C1+ 2A2 T3 = x3{S1 +S2+(V-1)C1+(V-1-2)C2}+3A3 i(xi-1)  0 xi  xi+1  i = V i  0 całkowite 5 warunek uczestnictwa w przetwarzaniu, jeżeli i >0 to xi=1 6 warunek zapewniający, że tylko pierwsze i kolejne procesory uczestniczą w przetwarzaniu Model zadania jednorodnego

Łańcuch procesorów równoczesne przetwarzanie i komunikacja - równania Model matematyczny wersja dyskretna z liniowymi ograniczeniami (lp_solve): Minimalizacja czasu pracy najdłużej pracującego procesora: Min T T  Ti T1 = 1A1 T2 = S1 +(V-1)C1+ 2A2 T3 = S1 +S2+(V-1)C1+(V-1-2)C2+3A3 .T4 = ....  i = V i > 0 całkowite Określenie liczby procesorów: znana, gdy wszystkie obliczają, a większa liczba procesorów daje dłuższe czasy przetwarzania; musi być zmniejszona jeżeli część z procesorów nie jest wykorzystana. Model zadania jednorodnego

Model zadania jednorodnego Łańcuch procesorów brak równoczesnego lokalnego przetwarzania i komunikacji Model matematyczny - wersja ciągła: Optymalizacja czasu przetwarzania równoznaczna z jednoczesnym zakończeniem obliczeń na wszystkich biorących w przetwarzaniu procesorach. iAi=Si+1+(i+2+...+ m)Ci+1+ i+1Ai+1 i=1,..,m-1 m-1Am-1=mAm V= 1+ 2+...+ m 1, 2,.., m  0 Jeśli brak rozwiązania to założona zbyt duża liczba procesorów. Model zadania jednorodnego

Model zadania jednorodnego Łańcuch procesorów brak równoczesnego lokalnego przetwarzania i komunikacji Model - wersja dyskretna: Minimalizacja czasu pracy najdłużej pracującego procesora: Min T T  Ti T1 = x2 S2 +(V-1)C2+ 1A1 T2 = x2( S2 +(V-1)C2+ x3 S3 +(V-1- 2)C3 + 2A2 Tm-1 = xm-1( S2 +(V-1)C2+ ..+ Sm + (m+m-1 )C m-1) + xmSm +mCm+m-1Am-1 Tm = xm( S2 +(V-1)C2+ ..+Sm) +mCm+mAm i (xi-1)  0 xi  xi+1  i = V i  0 całkowite 6 warunek uczestnictwa w przetwarzaniu, jeżeli i >0 to xi=1 7 warunek zapewniający, że tylko pierwsze i kolejne procesory uczestniczą w przetwarzaniu Model zadania jednorodnego

Model zadania jednorodnego Łańcuch procesorów brak równoczesnego lokalnego przetwarzania i komunikacji Model - wersja dyskretna z liniowymi ograniczeniami (lp_solve): Minimalizacja czasu pracy najdłużej pracującego procesora: Min T T  Ti T1 = S2 +(V-1)C2+ 1A1 T2 = S2 +(V-1)C2+ S3 +(V-1- 2)C3 + 2A2 T3= ... Tm-1 = S2 +(V-1)C2+ ..+Sm + mCm+m-1Am-1 Tm = S2 +(V-1)C2+ ..+Sm + mCm +mAm  i = V i > 0 całkowite Określenie liczby procesorów: znana, gdy wszystkie obliczają, a większa liczba procesorów daje dłuższe czasy przetwarzania; musi być zmniejszona jeżeli część z procesorów nie jest wykorzystana. Model zadania jednorodnego

Architektura gwiazdy równoczesne przetwarzanie i komunikacja Proces rozsyłania i obliczania danych w strukturze gwiazdy bez zwracania wyników. W przypadku równoczesnego zakończenia przetwarzania czas przetwarzania na procesorze i-1 jest równy czasowi przetwarzania na procesorze i i czasowi przesyłania danych do procesora i. Powyższy sposób rozsyłania pod względem dostępności medium odpowiada magistrali. Możliwa także wersja rozsyłania komunikatów w gwieździe, gdy komunikacje są zrównoleglone. Model zadania jednorodnego

Architektura gwiazdy równoczesne przetwarzanie i komunikacja Model- wersja ciągła: Optymalizacja czasu przetwarzania równoznaczna z jednoczesnym zakończeniem obliczeń na wszystkich biorących w przetwarzaniu procesorach, założono (por. rysunek) równoczesność jednej komunikacji z przetwarzaniem iAi=Si+1+i+1(Ai+1 + Ci+1) i=1,..,m-1 V= 1+ 2+...+ m 1, 2,.., m  0 Brak rozwiązania – założona zbyt duża liczba procesorów. Model zadania jednorodnego

Architektura gwiazdy równoczesne przetwarzanie i komunikacja W przypadku gwiazdy dla optymalizacji przetwarzania znaczenie ma kolejność, w jakiej do procesorów wysyłane są dane. Wysyłamy je w kolejności nie rosnących prędkości łączy komunikacyjnych - bez uwzględnienia prędkości procesorów. W przypadku braku równoczesności przetwarzania i komunikacji równanie dla i =1 przyjmuje postać 1A1=mAm Model zadania jednorodnego

Model zadania jednorodnego Uwagi uzupełniające Dalsza optymalizacja przetwarzania polega na skróceniu czasu oczekiwania na rozpoczęcie przetwarzania przez poszczególne procesory. Jest to możliwe wtedy, gdy dane do każdego procesora nie będą przesyłane jednokrotnie, lecz w wielu paczkach. Pierwsza paczka pozwala na jak najwcześniejsze rozpoczęcie obliczeń. Kolejne dane docierają do węzłów w czasie, gdy te już obliczają. Podejście to nawet przy braku zrównoleglenia komunikacji i przetwarzania pozwala na zrównoleglenie komunikacji w systemie (komunikacja potokowa). Dla optymalizacji przetwarzania (model dyskretny) wprowadza się zmienne określające momenty rozpoczęcia kolejnych komunikacji i rozpoczęcia przetwarzania kolejnej porcji danych na każdym procesorze. Praca nad kolejną partią danych jest możliwa po otrzymaniu jej i zakończeniu pracy nad poprzednią partią danych. W systemach ze zrównolegleniem obliczeń i komunikacji wcześniejsze rozpoczęcie przetwarzania na danym węźle możliwe, gdy wpierw wyślemy dane przeznaczone tylko dla niego, a następnie gdy już liczy, będzie „w tle” przesyłał dane do kolejnych procesorów. Dalsze informacje (opis, symulacje, obliczenia dla modelu ciągłego) na temat modelu zadań jednorodnych: http://www.cs.put.poznan.pl/mdrozdowski/divisible/ W wykładzie wykorzystano rysunki udostępnione na powyższej stronie www. Model zadania jednorodnego

Model zadania jednorodnego Wielokrotne rozsyłanie danych gwiazda, komunikacja i obliczenia szeregowo P0 P1 P2 komunikacja obliczenia Model zadania jednorodnego

Model zadania jednorodnego Wielokrotne rozsyłanie danych gwiazda, komunikacja i obliczenia szeregowo Notacja: m – liczba procesorów bez procesora centralnego p – liczba cykli rozsyłania danych n – całkowita liczba paczek rozsyłanych n=m*p i – wielkość i-tej paczki, i=n - 1. paczka do 1. procesora, i=1 - ostatnia paczka do ostatniego procesora 0- dane przetwarzane przez procesor centralny ti- moment rozpoczęcia transmisji danych i Ti- czas zakończenia przetwarzania procesora Pi T* - czas przetwarzania systemu V – całość przetwarzanych danych Model zadania jednorodnego

Model zadania jednorodnego Wielokrotne rozsyłanie danych gwiazda, komunikacja i obliczenia szeregowo Min T* przy ograniczeniach: ti-1>=ti+C i +S dla 1<i<=n – wysłanie każdej paczki po przesłaniu wcześniejszej ti-m>=ti+C i +S+A i dla m<i<=n – odebranie kolejnej paczki po obliczeniach wcześniejszej i=0 mp i =V Ti>= ti+ i (A+C)+S dla i=1..m – zakończenie obliczeń po obliczeniu ostatniej paczki dla tego procesora T0=t1+S+C 1+A 0 – początek obliczeń po wysłaniu ostatniej paczki do pierwszego procesora T*>=Ti dla i=0..m Ti ,ti , i >= 0 i całkowite Model zadania jednorodnego

Zadanie projektowe - laboratorium Temat: optymalizacja przetwarzania równoległego za pomocą modelu zadania jednorodnego. Zadania: Sformułowanie równań dla określonej struktury maszyny równoległej i typu komunikacji (model ciągły i dyskretny) – modelujemy rzeczywisty systemu Parastation dostępny przez transputery.cs.put.poznan.pl. Wyznaczenie parametrów maszyny równoległej Ai,Ci, Si - programy na transputery. Rozwiązanie modeli analitycznie oraz programem optymalizującym: lp_solve (dostępny w sekcji pobierz serwera transputery.cs.put.poznan.pl) Uruchomienie przetwarzania w systemie równoległym zgodnie z uzyskanym sposobem podziału zadania. Organizacja przetwarzania (zrównoleglenie komunikacji i przetwarzania) zgodnie z typem komunikacji – program na transputery. Model zadania jednorodnego