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

Podobne dokumenty
Algorytmy równoległe: ocena efektywności prostych algorytmów dla systemów wielokomputerowych

Algorytmy równoległe: ocena efektywności prostych algorytmów dla systemów wielokomputerowych

Algorytmy równoległe: prezentacja i ocena efektywności prostych algorytmów dla systemów równoległych

Algorytmy równoległe. Rafał Walkowiak Politechnika Poznańska Studia inżynierskie Informatyka 2010

5. Model komunikujących się procesów, komunikaty

Przetwarzanie równoległesprzęt. Rafał Walkowiak Wybór

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

Projektowanie algorytmów równoległych. Zbigniew Koza Wrocław 2012

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

Analiza efektywności przetwarzania współbieżnego

Przetwarzanie równoległe

Numeryczna algebra liniowa

Podstawy Informatyki Systemy sterowane przepływem argumentów

Tryby komunikacji między procesami w standardzie Message Passing Interface. Piotr Stasiak Krzysztof Materla

Analiza ilościowa w przetwarzaniu równoległym

Przesyłania danych przez protokół TCP/IP

Algorytmy i Struktury Danych

Przetwarzanie równoległesprzęt

Referencyjny model OSI. 3 listopada 2014 Mirosław Juszczak 37

Programowanie współbieżne Wykład 2. Iwona Kochańska

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

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

Przygotowanie kilku wersji kodu zgodnie z wymogami wersji zadania,

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

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

Technologie informacyjne (5) Zdzisław Szyjewski

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

Wykład I. Podstawowe pojęcia. Studia Podyplomowe INFORMATYKA Architektura komputerów

Wykład 2 Podstawowe pojęcia systemów równoległych, modele równoległości, wydajność obliczeniowa, prawo Amdahla/Gustafsona

Algorytmy Równoległe i Rozproszone Część VI - Systemy rozproszone, podstawowe pojęcia

Urządzenia sieciowe. Tutorial 1 Topologie sieci. Definicja sieci i rodzaje topologii

4. Procesy pojęcia podstawowe

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

Równoległość i współbieżność

Równoległość i współbieżność

Porównanie wydajności CUDA i OpenCL na przykładzie równoległego algorytmu wyznaczania wartości funkcji celu dla problemu gniazdowego

LEKCJA TEMAT: Zasada działania komputera.

Wykład I. Administrowanie szkolną siecią komputerową. dr Artur Bartoszewski

Analiza i programowanie obiektowe 2016/2017. Wykład 6: Projektowanie obiektowe: diagramy interakcji

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

Wykład 1. Systemy przekazywania wiadomości z założeniem bezbłędności działania

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

4. Procesy pojęcia podstawowe

Przykładowe sprawozdanie. Jan Pustelnik

Mariusz Nowak Instytut Informatyki Politechnika Poznańska

Modelowanie niezawodności prostych struktur sprzętowych

Badania operacyjne: Wykład Zastosowanie kolorowania grafów w planowaniu produkcji typu no-idle

Modyfikacja algorytmów retransmisji protokołu TCP.

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

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

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

Zadanie transportowe i problem komiwojażera. Tadeusz Trzaskalik

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.

Programowanie liniowe całkowitoliczbowe. Tadeusz Trzaskalik

Matematyka dyskretna dla informatyków

Rozwiązywanie problemów z użyciem Solvera programu Excel

Harmonogramowanie produkcji

Logiczny model komputera i działanie procesora. Część 1.

4. Procesy pojęcia podstawowe

Rys. 1. Wynik działania programu ping: n = 5, adres cyfrowy. Rys. 1a. Wynik działania programu ping: l = 64 Bajty, adres mnemoniczny

FUNKCJA LINIOWA, RÓWNANIA I UKŁADY RÓWNAŃ LINIOWYCH

Sieci komputerowe - Urządzenia w sieciach

Podstawy Automatyki. Wykład 4 - algebra schematów blokowych. dr inż. Jakub Możaryn. Warszawa, Instytut Automatyki i Robotyki

Marek Parfieniuk, Tomasz Łukaszuk, Tomasz Grześ. Symulator zawodnej sieci IP do badania aplikacji multimedialnych i peer-to-peer

Elementy kognitywistyki III: Modele i architektury poznawcze

Architektura komputerów

Zapoznanie z technikami i narzędziami programistycznymi służącymi do tworzenia programów współbieżnych i obsługi współbieżności przez system.

Projektowanie Scalonych Systemów Wbudowanych VERILOG

Sieci Komputerowe Modele warstwowe sieci

SYSTEMY OPERACYJNE LABORATORIUM 2014/2015

Programowanie deklaratywne

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

Uniwersytet w Białymstoku Wydział Ekonomiczno-Informatyczny w Wilnie SYLLABUS na rok akademicki 2010/2011

Colloquium 1, Grupa A

Klasa 1 technikum. Poniżej przedstawiony został podział wymagań na poszczególne oceny szkolne:

Architektura potokowa RISC

Spis treści. 1 Wprowadzenie. 1.1 Podstawowe pojęcia. 1 Wprowadzenie Podstawowe pojęcia Sieci komunikacyjne... 3

Drgania poprzeczne belki numeryczna analiza modalna za pomocą Metody Elementów Skończonych dr inż. Piotr Lichota mgr inż.

Standard transmisji równoległej LPT Centronics

=B8*E8 ( F9:F11 F12 =SUMA(F8:F11)

Podstawy Informatyki Elementarne podzespoły komputera

Protokoły sieciowe model ISO-OSI Opracował: Andrzej Nowak

Mechatronika i inteligentne systemy produkcyjne. Modelowanie systemów mechatronicznych Platformy przetwarzania danych

Instytut Politechniczny Państwowa Wyższa Szkoła Zawodowa. Diagnostyka i niezawodność robotów

Architektura komputerów. Układy wejścia-wyjścia komputera

Klient-Serwer Komunikacja przy pomocy gniazd

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

Wstęp do programowania 2

Procedura zgłaszania problemów z obsługą oraz nieprawidłowości w funkcjonowaniu systemu PEFS 2007 w zakresie Programu Operacyjnego Kapitał Ludzki

Wprowadzenie do informatyki i użytkowania komputerów. Kodowanie informacji System komputerowy

MODEL OPTYMALIZACYJNY SYNCHRONIZACJI LINII TRAMWAJOWYCH

n=0 (n + r)a n x n+r 1 (n + r)(n + r 1)a n x n+r 2. Wykorzystując te obliczenia otrzymujemy, że lewa strona równania (1) jest równa

3URJUDPRZDQLHZVSyáELH*QHZVWS

Część I. Uwaga: Akceptowane są wszystkie odpowiedzi merytorycznie poprawne i spełniające warunki zadania. Zadanie 1.1. (0 3)

Przetworniki analogowo-cyfrowe

Rywalizacja w sieci cd. Protokoły komunikacyjne. Model ISO. Protokoły komunikacyjne (cd.) Struktura komunikatu. Przesyłanie między warstwami

Podstawy Automatyki. Wykład 4 - algebra schematów blokowych. dr inż. Jakub Możaryn. Warszawa, Instytut Automatyki i Robotyki

Akademia Techniczno-Humanistyczna w Bielsku-Białej

Transkrypt:

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

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 te mogą mieć niewielki rozmiar. Model zadania jednorodnego 2

Parametry modelu (1) m - liczba komputerów komputer (węzeł przetwarzający): procesor, pamięć, podsystem komunikacyjny (sprzęt lub oprogramowanie). 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. α i wielkość danych przetwarzana na procesorze Pi Σ α i =V i=1..m Model zadania jednorodnego 3

Parametry modelu (2) A i czas przetwarzania jednostki danych -odwrotność prędkości - dla Pi A i α i czas przetwarzania danych α i na procesorze Pi S i + α i C i czas przesyłania α i jednostek danych pomiędzy dwoma procesorami, S i czas zainicjowania transmisji, C i współczynnik prędkości transmisji danych łączem komunikacyjnym odwrotność prędkości, zakładamy stałą wartość współczynnika i brak równoczesności transmisji jednym łączem. Model zadania jednorodnego 4

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 5

Szeregowanie zadań jednorodnych w systemie wielokomputerowym 1. 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 (jeśli jest uwzględniana). 2. 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 zostać w modelu uwzględnione, lecz nie wpływa znacząco na złożoność metody. 3. ZADANIA JEDNORODNE (M.Drozdowski) Model zadania jednorodnego 6

Łańcuch procesorów równoczesne obliczenia 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 7

Model- wersja ciągła: Łańcuch procesorów równoczesne obliczenia i komunikacja 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... α i A i = S i +(α i+1 +...+ α m ) C i + α i+1 A i+1 i=1,..,m V = α 1 + α 2 +...+ α m α 1, α 2,.., α m 0 Model zadania jednorodnego 8

Łańcuch procesorów równoczesne obliczenia i komunikacja Model matematyczny wersja dyskretna bez zmiennych binarnych: Minimalizacja czasu pracy najdłużej pracującego procesora: Min T 1. T T i i=1..3 2. T 1 = α 1 A 1 3. T 2 = S 1 +(V-α 1 )C 1 + α 2 A 2 4. T 3 = S 1 +S 2 +(V-α 1 )C 1 +(V-α 1 -α 2 )C 2 +α 3 A 3 5.. Σ α i = V 6. α i >= 0 i całkowite dla i=1..3 Określenie optymalnej liczby procesorów: znana, gdy wszystkie obliczają, a większa i mniejsza liczba procesorów daje dłuższe czasy przetwarzania. Uwaga! liczbę procesorów w modelu należy zmniejszyć jeżeli część z procesorów nie jest wykorzystana - α i =0. Model zadania jednorodnego 9

Łańcuch procesorów równoczesne obliczenia i komunikacja Model matematyczny wersja dyskretna: Minimalizacja czasu pracy najdłużej pracującego procesora: Min T 1. T T i i=1..3 2. T 1 = α 1 A 1 3. T 2 = x 2 S 1 +(V-α 1 )C 1 + α 2 A 2 4. T 3 = x 2 S 1 +(V-α 1 )C 1 + x 3 S 2 +α 3 C 2 +α 3 A 3 5. Vx 2 α 2 + α 3 -- ograniczenie wymusza x 2 =1 gdy dane są przesyłane (za względu na int x i i minimalizację) 6. Vx 3 α 3 7. Σ α i = V 8. α i 0, x i >0 i int 5-6 ograniczenia dla wartości x i, minimalizacja powoduje dążenie do x i =0 Model zadania jednorodnego 10

Łańcuch procesorów brak równoczesnych lokalnych obliczeń 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. α i A i = S i+1 +(α i+2 +...+ α m )C i+1 + α i+1 A i+1 i=1,..,m-1 α m-1 A m-1 = α m A m V = α 1 + α 2 +...+ α m α 1, α 2,.., α m 0 Model zadania jednorodnego 11

Łańcuch procesorów brak równoczesnych lokalnych obliczeń i komunikacji Model - wersja dyskretna bez zmiennych binarnych: Minimalizacja czasu pracy najdłużej pracującego procesora: Min T 1. T T i i=1..3 2. T 1 = S 2 +(V-α 1 )C 2 + α 1 A 1 3. T 2 = S 2 +(V-α 1 )C 2 + S 3 +(V-α 1 - α 2 )C 3 + α 2 A 2 4. T 3 =... 5. T m-1 = S 2 +(V-α 1 )C 2 +..+S m + α m C m +α m-1 A m-1 6. T m = S 2 +(V-α 1 )C 2 +..+S m + α m C m +α m A m 7. Σ α i = V 8. α i > 0 i całkowite dla i=1..m Określenie optymalnej liczby procesorów: znana, gdy wszystkie obliczają, a większa i mniejsza liczba procesorów daje dłuższe czasy przetwarzania; liczbę procesorów w sformułowaniu należy zmniejszyć jeżeli część z procesorów nie jest wykorzystana - α i =0. Model zadania jednorodnego 12

Łańcuch procesorów brak równoczesnych lokalnych obliczeń i komunikacji Model - wersja dyskretna: Minimalizacja czasu pracy najdłużej pracującego procesora: Min T 1. T T i i=1..3 2. T 1 = x 1 S 2 +(V-α 1 )C 2 + α 1 A 1 3. T 2 = x 1 S 2 +(V-α 1)C 2+ x 2 S 3 +(V-α 1- α 2)C 3 + α 2A 2 4. T 3 = x 1 S 2 +(V-α 1 )C 2 + x 2 S 3 +(V-α 1 - α 2 )C 3 + α 3 A 2 5. Vx 1 (V-α 1 ) 6. Vx 2 (V-α 1 - α 2 ) 7. Σ α i = V 8. α i 0 i całkowite dla i=1..3 5-6 warunek uczestnictwa w przetwarzaniu kolejnych elementów łańcucha, jeżeli Σ α i >0 dla i k to x k =1w przeciwnym razie x k może być równe 0. Model zadania jednorodnego 13

Architektura systamu: gwiazda równoczesne obliczenia 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 (z proc. 1) 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 różnymi łączami są zrównoleglone. Model zadania jednorodnego 14

Architektura: gwiazda równoczesne obliczenia 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. α i A i = S i+1 +α i+1 (A i+1 + C i+1 ) i=1,..,m-1 V = α 1 + α 2 +...+ α m α 1, α 2,.., α m 0 Model zadania jednorodnego 15

Architektura: gwiazda różne przypadki W przypadku gwiazdy dla optymalizacji przetwarzania znaczenie ma kolejność wysyłania danych do procesorów. Jeżeli prędkości łączy są różne (i można zaniedbać S), to dane wysyłamy w kolejności nie rosnących prędkości łączy komunikacyjnych - bez uwzględnienia prędkości procesorów. W przypadku równej prędkości łączy wpierw wysyłamy dane do szybszego procesora. Jeżeli gałąź struktury składa się z wielu węzłów to uwzględniamy całą moc obliczeniową, która może się zmieniać ze zmianą ilości węzłów przetwarzających w gałęzi (funkcja ilości danych). W przypadku braku równoczesności obliczeń i komunikacji równanie ze strony poprzedniej dla i =1 przyjmuje postać α 1 A 1 =α m A m,, pozostałe równania bez zmian Model zadania jednorodnego 16

Uwagi uzupełniające do prostych modeli 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 lokalnej równoległości komunikacji i obliczeń pozwala na zrównoleglenie komunikacji w systemie (komunikacja potokowa). Dla optymalizacji przetwarzania wprowadza się dodatkowe zmienne określające momenty rozpoczęcia kolejnych komunikacji i/lub rozpoczęcia przetwarzania kolejnej porcji danych na każdym procesorze. Praca nad kolejną partią danych jest możliwa po jej otrzymaniu i zakończeniu pracy nad poprzednią partią danych. W systemach ze zrównolegleniem obliczeń i komunikacji wcześniejsze rozpoczęcie przetwarzania w danym węźle jest możliwe również dzięki temu, że wpierw wyślemy dane przeznaczone tylko dla jednego procesora, a następnie gdy już liczy, będzie w tle odbierał i przesyłał dalej dane do kolejnych procesorów (jedno zadanie dla każdego procesora) Model zadania jednorodnego 17

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 18

Wielokrotne rozsyłanie danych gwiazda, komunikacja i obliczenia szeregowo P0 α0 P2 α4 α2 P1 α3 α1 komunikacja obliczenia Przestoje: P0 nie wysyła bo czeka na koniec obliczeń P1, P2 czeka na zakończenie wcześniejszej komunikacji Model zadania jednorodnego 19

Wielokrotne rozsyłanie danych gwiazda, komunikacja i obliczenia szeregowo 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, paczki numerowane i wysyłane od końca, α n to 1. paczka do m- tego procesora, α 1 to ostatnia paczka do pierwszego procesora α 0 - dane przetwarzane przez procesor centralny t i - moment rozpoczęcia transmisji danych α i np. t 2 >= t 3 T i - czas zakończenia przetwarzania procesora P i po obliczeniach α i T * - czas przetwarzania systemu V ilość przetwarzanych danych Model zadania jednorodnego 20

Wielokrotne rozsyłanie danych gwiazda, komunikacja i obliczenia szeregowo Min T * przy ograniczeniach: 1. T * >=T i dla i=0..m 2. t n =0; 3. t i-1 >=t i +C α i +S dla 1<i<=n wysłanie/odebranie każdej paczki po przesłaniu wcześniejszej (wysyłanie szeregowo różnymi łączami w węzła centralnego) 4. t i-m >=t i +C α i +S+A α i dla m<i<=n wysłanie/odebranie kolejnej paczki do tego samego procesora po obliczeniu wcześniejszej (szeregowo obliczenia i komunikacja lokalna) 5. Σ n i=0 α i =V 6. T i >= t i + α i (A+C)+S dla i=1..m zakończenie obliczeń po obliczeniu ostatniej paczki dla tego procesora (liczy po odebraniu danych) 7. T 0 =t 1 +S+C α 1 +A α 0 początek obliczeń 0 węzła po wysłaniu ostatniej paczki do pierwszego procesora 8. T i,t i, α i >= 0 9. α i całkowite dla i=0..n Model zadania jednorodnego 21

Problemy szczególne do rozwiązania model i architektura aplikacji Struktura aplikacji w przypadku równoległego przetwarzania i komunikacji blokującej liczba procesów obsługujących komunikację.(s) Odbiór danych z różnych źródeł (szeregowo lub równolegle) i przekazywanie części danych dalej.(s) Transmisja wielokrotna tym samym łączem. Obliczenia paczki danych po jej otrzymaniu i po zakończeniu obliczeń wcześniej otrzymanej paczki danych. Usuwanie nieistniejących zależności czasowych uniezależnienie zdarzeń od zdarzeń nie występujących.(s) Model zadania jednorodnego 22

A Równoległe przetwarzanie i komunikacja blokująca, przesłania wielokrotne Struktura aplikacji B SMK H SMK H K H K H K H K H L L MH LLK A.Oczekiwanie na kolejną porcję danych procesu komunikacyjnego (cykliczne przeglądanie pamięci i przerywanie przetwarzania). B.Proces zarządcy odbiera komunikaty o gotowości danych (od odbióry) i gotowości procesów (od nadawcy).zezwala na komunikacje gdy jest ona możliwa. Proces zarządcy zawsze gotowy na odbiór komunikatu. Model zadania jednorodnego 23

Usuwanie z modelu nieistniejących zależności czasowych Uniezależnienie komunikacji od innej komunikacji (która nie zachodzi) t w t i-1 P1 t i P2 t k t k >=t i +S+α 1 C równoległe odbieranie danych z t k >=t w +S+α 2 C dwóch źródeł,czasy rozpoczęcia t i >=t i-1 +S+α 3 C- M(1-y) komunikacji Vy>=α 3, y binarne Przy minimalizacji czasu, jeżeli α 3 =0 to y=0 i ograniczenie pierwsze staje się nieistotne i t k może się rozpocząć już po zakończeniu t w Model zadania jednorodnego 24

Sekwencyjne obliczanie dwóch porcji danych t j,t i momenty rozpoczęcia obliczeń paczek α j α i Chcemy aby: t j >= t i + α i A gdy t j >=t i t i >=t j + α j A gdy t j <t i zamodelowane zostaje za pomocą równań: t j >=t i + α i A M(1-y) t i >=t j + α j A M y 0<=y <=1 i całkowite dla odpowiednio dużego M gdy y=1 ograniczenie drugie jest spełnione i tylko pierwsze ograniczenie jest znaczące zadanie i wykonuje się przed zadaniem j Analogicznie można zamodelować sekwencyjne odbieranie danych z 2 źródeł. Model zadania jednorodnego 25

Zadanie projektowe - laboratorium Temat: optymalizacja przetwarzania równoległego za pomocą modelu zadania jednorodnego. Zadania: 1. Sformułowanie równań dla określonej struktury maszyny równoległej i typu komunikacji (model dyskretny) modelujemy określoną przez wykładowcę architekturę. 2. Rozwiązanie modeli programem optymalizującym: lp_solve 3. Prezentacja wyników optymalizacji za pomocą wykresów Gantta. Model zadania jednorodnego 26