Programowanie Równoległe i Rozproszone

Podobne dokumenty
Zaawansowane metody numeryczne Komputerowa analiza zagadnień różniczkowych 1. Układy równań liniowych

Diagonalizacja macierzy kwadratowej

Zaawansowane metody numeryczne

p Z(G). (G : Z({x i })),

5. Maszyna Turinga. q 1 Q. Konfiguracja: (q,α β) q stan αβ niepusta część taśmy wskazanie położenia głowicy

Wstęp do metod numerycznych Faktoryzacja SVD Metody iteracyjne. P. F. Góra

Projekt 6 6. ROZWIĄZYWANIE RÓWNAŃ NIELINIOWYCH CAŁKOWANIE NUMERYCZNE

5. Pochodna funkcji. lim. x c x c. (x c) = lim. g(c + h) g(c) = lim

V. WPROWADZENIE DO PRZESTRZENI FUNKCYJNYCH

Zestaw zadań 4: Przestrzenie wektorowe i podprzestrzenie. Liniowa niezależność. Sumy i sumy proste podprzestrzeni.

MATEMATYKA POZIOM ROZSZERZONY Kryteria oceniania odpowiedzi. Arkusz A II. Strona 1 z 5

Podstawy teorii falek (Wavelets)

Wykład 14. Elementy algebry macierzy

Twierdzenie Bezouta i liczby zespolone Javier de Lucas. Rozwi azanie 2. Z twierdzenia dzielenia wielomianów, mamy, że

dr Mariusz Grządziel 15,29 kwietnia 2014 Przestrzeń R k R k = R R... R k razy Elementy R k wektory;

architektura komputerów w. 3 Arytmetyka komputerów

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

Zapis informacji, systemy pozycyjne 1. Literatura Jerzy Grębosz, Symfonia C++ standard. Harvey M. Deitl, Paul J. Deitl, Arkana C++. Programowanie.

I. Elementy analizy matematycznej

Laboratorium ochrony danych

Zadanie 1. Udowodnij, że CAUS PRAM. Załóżmy przetwarzanie przyczynowo spójne. Dla każdego obrazu historii hv i zachodzi zatem:

MECHANIKA 2 MOMENT BEZWŁADNOŚCI. Wykład Nr 10. Prowadzący: dr Krzysztof Polko

3. Macierze i Układy Równań Liniowych

Stanisław Cichocki Natalia Nehrebecka. Zajęcia 4

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

Komputerowa analiza zagadnień różniczkowych 1. Układy równań liniowych

Wykład 5. Metoda eliminacji Gaussa

Pokazać, że wyżej zdefiniowana struktura algebraiczna jest przestrzenią wektorową nad ciałem

Pracownia Automatyki i Elektrotechniki Katedry Tworzyw Drzewnych Ćwiczenie 3. Analiza obwodów RLC przy wymuszeniach sinusoidalnych w stanie ustalonym

Programowanie Równoległe i Rozproszone. Algorytm Kung a. Algorytm Kung a. Programowanie Równoległe i Rozproszone Wykład 8. Przygotował: Lucjan Stapp

BADANIA OPERACYJNE. Podejmowanie decyzji w warunkach niepewności. dr Adam Sojda

RUCH OBROTOWY Można opisać ruch obrotowy ze stałym przyspieszeniem ε poprzez analogię do ruchu postępowego jednostajnie zmiennego.

( ) ( ) 2. Zadanie 1. są niezależnymi zmiennymi losowymi o. oraz. rozkładach normalnych, przy czym EX. i σ są nieznane. 1 Niech X

RÓWNOLEGŁY ALGORYTM POPULACYJNY DLA PROBLEMU GNIAZDOWEGO Z RÓWNOLEGŁYMI MASZYNAMI

Różniczkowanie funkcji rzeczywistych wielu zmiennych. Matematyka Studium doktoranckie KAE SGH Semestr letni 2008/2009 R. Łochowski

METODA ELEMENTU SKOŃCZONEGO. Termokinetyka

Część 1 7. TWIERDZENIA O WZAJEMNOŚCI 1 7. TWIERDZENIA O WZAJEMNOŚCI Twierdzenie Bettiego (o wzajemności prac)

POLITECHNIKA POZNAŃSKA ZAKŁAD CHEMII FIZYCZNEJ ĆWICZENIA PRACOWNI CHEMII FIZYCZNEJ

W praktyce często zdarza się, że wyniki obu prób możemy traktować jako. wyniki pomiarów na tym samym elemencie populacji np.

a 11 a a 1n a 21 a a 2n... a m1 a m2... a mn x 1 x 2... x m ...

Macierze. Rozdział Działania na macierzach

Układy równań i nierówności liniowych

5. Rozwiązywanie układów równań liniowych

Wstęp do Informatyki zadania ze złożoności obliczeniowej z rozwiązaniami

ĆWICZENIE NR 2 POMIARY W OBWODACH RLC PRĄDU PRZEMIENNEGO

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

( ) Elementy rachunku prawdopodobieństwa. f( x) 1 F (x) f(x) - gęstość rozkładu prawdopodobieństwa X f( x) - dystrybuanta rozkładu.

Algorytmy w teorii liczb

Metody analizy obwodów

Numeryczna algebra liniowa. Krzysztof Banaś Obliczenia Wysokiej Wydajności 1

Weryfikacja hipotez dla wielu populacji

Automatyzacja procesu tworzenia sprzętowego narzędzia służącego do rozwiązywania zagadnienia logarytmu dyskretnego na krzywych eliptycznych

Algorytmy dla maszyny PRAM

Technologie informacyjne Wykład VII-IX

Sztuczne sieci neuronowe. Krzysztof A. Cyran POLITECHNIKA ŚLĄSKA Instytut Informatyki, p. 311

Przetwarzanie równoległe Zadanie domowe III

Kryptografia na procesorach wielordzeniowych

Układy równań liniowych. Krzysztof Patan

Rachunek wektorowy - wprowadzenie. dr inż. Romuald Kędzierski

ALGEBRA Z GEOMETRIĄ CIAŁO FUNKCJI WYMIERNYCH

Wykład z równań różnicowych

Zaawansowane metody numeryczne

METODY NUMERYCZNE. wykład. konsultacje: wtorek 10:00-11:30 środa 10:00-11:30. dr inż. Grażyna Kałuża pokój

Algorytmy Równoległe i Rozproszone Część V - Model PRAM II

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

Co to jest wektor? Jest to obiekt posiadający: moduł (długość), kierunek wraz ze zwrotem.

Metody gradientowe poszukiwania ekstremum. , U Ŝądana wartość napięcia,

STATYKA Z UWZGLĘDNIENIEM DUŻYCH SIŁ OSIOWYCH

Dydaktyka matematyki, IV etap edukacyjny (ćwiczenia) Ćwiczenia nr 7 Semestr zimowy 2018/2019

Wykład 1. Na początku zajmować się będziemy zbiorem liczb całkowitych

SZYBKI ALGORYTM Z MACIERZĄ SHURA DLA MACIERZY TRÓJDIAGONALNYCH

1. Liczby wymierne. x dla x 0 (wartością bezwzględną liczby nieujemnej jest ta sama liczba)

ALGEBRA rok akademicki

Przykład 5.1. Kratownica dwukrotnie statycznie niewyznaczalna

Macierzowe algorytmy równoległe

Kwantowa natura promieniowania elektromagnetycznego

Zestaw 12- Macierz odwrotna, układy równań liniowych

Instrukcja do ćwiczeń laboratoryjnych z przedmiotu: Badania operacyjne. Temat ćwiczenia: Problemy rozkroju materiałowego, zagadnienia dualne

PRÓBNY EGZAMIN MATURALNY

Wykład 16. P 2 (x 2, y 2 ) P 1 (x 1, y 1 ) OX. Odległość tych punktów wyraża się wzorem: P 1 P 2 = (x 1 x 2 ) 2 + (y 1 y 2 ) 2

Przykładowe zadania z teorii liczb

Egzamin poprawkowy z Analizy II 11 września 2013

Równania rekurencyjne na dziedzinach

Rozdział 5. Macierze. a 11 a a 1m a 21 a a 2m... a n1 a n2... a nm

0 + 0 = 0, = 1, = 1, = 0.

Natalia Nehrebecka. Wykład 2

Natalia Nehrebecka. Zajęcia 4

Stanisław Cichocki. Natalia Nehrebecka. Wykład 6

KURS STATYSTYKA. Lekcja 6 Regresja i linie regresji ZADANIE DOMOWE. Strona 1

Programowanie dynamiczne

FIGURY I PRZEKSZTAŁCENIA GEOMETRYCZNE

Wielomiany. dr Tadeusz Werbiński. Teoria

Odtworzenie wywodu metodą wstępującą (bottom up)

1. Relacja preferencji

PRÓBNY EGZAMIN MATURALNY

Transformaty. Kodowanie transformujace

UKŁADY ALGEBRAICZNYCH RÓWNAŃ LINIOWYCH

Beata Szymańska Wojciech Topolski Marcin Tomasik KWANTYZACJA WEKTOROWA

PODSTAWY MATEMATYCZNE

Transkrypt:

Programowane Równoległe Rozproszone Wykład Programowane Równoległe Rozproszone Lucjan Stapp Wydzał Matematyk Nauk Informacyjnych Poltechnka Warszawska (l.stapp@mn.pw.edu.pl) /38 PRR Wykład Chcemy rozwązać następujący układ równań lnowych A* where gdze A jest nesymetryczną trójdagonalnąmacerzą n * n rzędu n: są n-wymarowym wektoram: (,, 3,..., n-, n ) T (,, 3,..., n-, n ) T a A c a c c.................. a n a n n cn n A, mają współczynnk rzeczywste. /38 PRR Wykład Jak podano na poprzednm wykładze, jednym z najwydajnejszych ( najardzej popularnych) algorytmów sekwencyjnych do rozwązywana układu równań lnowych A d opera sę na rozkładze LU macerzy A. 3/38 PRR Wykład

Programowane Równoległe Rozproszone Wykład A jest rozkładane na loczyn dwóch dwudagonalnych macerzy L U gdze e A LU e............ e n e n f * c f c f c............ f n c f n n Następne z równana Ly d wylcza sę y, a z równana U y wylcza sę. 4/38 PRR Wykład W tym przypadku algorytm rozkładu LU składa sę z następujących kroków : Krok: Olczene rozkładu LU macerzy A f e a / f - n - f e * c - n Krok : Wyznaczene y z Ly d y d y d e * y - n - Krok 3: Wylczene z U y używając n- y n- / f n- (y c * + ) / f n - Czas: Algorytm LU wymaga 8*n 7operacj arytmetycznych (flops). 5/38 PRR Wykład Sekwencyjny algorytm przedrostkowy (ang. Sequental pref- SP) Równane A d może zostać przedstawone jako trzyczęścowa zależność rekurencyjna: a * - + * + c * + d n oraz * + c * d a n- * n- + n- * n- d n- 6/38 PRR Wykład

Programowane Równoległe Rozproszone Wykład Sekwencyjny algorytm przedrostkowy (SP) Zdefnujmy a c n- - n Zgodne z powyższą konwencją, a * - + * + c * + d zachodz dla n. 7/38 PRR Wykład Bez straty ogólnośc, możemy założyć, że c W każdym nnym przypadku układ może zostać podzelony na dwa ( lu węcej) układy trójdagonalne, które możemy rozpatrywać oddzelne. 8/38 PRR Wykład Z a * - + * + c * + d n otrzymujemy a d + * * + c c c n Podstawając: a d α β χ c c c mamy + α * + β * - + χ for n. 9/38 PRR Wykład 3

4 Programowane Równoległe Rozproszone Wykład /38 PRR Wykład Powyższe wyrażene może zostać zapsane w postac macerzowej jako: Zdefnujmy: Możemy, węc, napsać: X + B * X for n + * χ β α B χ β α n n n X /38 PRR Wykład Równość macerzowa X + B * X for n pozwala nam na wylczene wszystkch X dla n o le tylko dany jest początkowy wektor X jest dany. Do rozpoczęca olczeń musmy tylko wylczyć. X /38 PRR Wykład Zauważmy, że powtarzając X + B * X otrzymujemy X B * X X B * X B * B * X X 3 B * X B * B * B * X... X n B n- * X n- B n- * B n- *... *B * X

Programowane Równoległe Rozproszone Wykład Oznaczając C B * B - *... *B n otrzymujemy X n C n- * X 3/38 PRR Wykład ale B for n Stąd 4/38 PRR Wykład B * B + + * + + + + + s s s s s s 5/38 PRR Wykład 5

Programowane Równoległe Rozproszone Wykład Tym samym g g g C n g g g Współczynnk g j zależą od α, β oraz χ dla n 6/38 PRR Wykład Poneważ X n C n- * X n g n g g g g * g Poneważ - n, węc mnożąc perwszy wersz C n- przez otrzymujemy g * + g Stąd - g / g 7/38 PRR Wykład Poneważ mamy już X, X możemy olczyć wszystke X przy użycu prostej rekursj macerzowej: X C - * X 8/38 PRR Wykład 6

Programowane Równoległe Rozproszone Wykład jest następujący: Krok : Stwórz macerze B dla n Krok : Olcz łańcuch macerzy C korzystając z C B C B * C - Krok 3: Oznacz C n- wylczone w Kroku przez g g C n g g Olcz - g / g oraz g g X 9/38 PRR Wykład Krok 4: Olcz X oraz z wzoru X C * X dla n Czas: Algorytm SP wymaga 5 * n operacj arytmetycznych (flops). /38 PRR Wykład (ang. parallel pref) na hper-kostce Krok algorytmu SP jest jego kluczowym punktem. Olczene loczynu (q, q,..., q n- ) może yć wykonane w log n krokach przy użycu n procesorów Nech para ( j) reprezentuje loczyn q *q - *...* q j. (np. 7 4 reprezentujeq 7 *q 6 * q 5 *q 4 ). /38 PRR Wykład 7

Programowane Równoległe Rozproszone Wykład (ang. parallel pref) na hper-kostce Krok algorytmu SP jest jego kluczowym punktem. Szkc algorytmu: Jeżel element q jest początkowo przydzelony procesorow p to w k-tym kroku ( k log n) procesor p wysyła swoje dane do procesora p j, gdze j + k-. Procesor p j mnoży te dane ze swom własnym, a następne wysyła olczony loczyn do odpowednch procesów. /38 PRR Wykład Krok algorytmu SP jest jego kluczowym punktem. Algorytm dla n8 3/38 PRR Wykład Implementacja ędze wydajna, jeżel wymagana komunkacyjne algorytmu ędą mnmalne. Stąd wynka sposó, w jak zastosujemy ten algorytm na hper-kostce. 4/38 PRR Wykład 8

Programowane Równoległe Rozproszone Wykład MNOŻENIE MACIERZY Procesory połączone równolegle o topolog hperkostk. Jeżel p d oraz d d-... są narną reprezentacją lczy d {,,..., p-} oraz (j) - dla j < d - jest tą lczą, której reprezentacja narna ma postać d d-...ν j..., gdze ν j jest dopełnenem j, wtedy w komputerze z procesoram połączonym topologą hperkostk, procesor jest połączony ze wszystkm procesoram (j) 5/38 PRR Wykład Def. Bnary reflected Gray code Let e d-t nary numer, d d-... Bnary reflected Gray code G () g d g d-... g s defned y: g ( + + ) mod for,,..., d- g d d 6/38 PRR Wykład MNOŻENIE MACIERZY Def. Bnarny kod Gray a Nech ędze d-tową lczą w kodze narnym d d-.... Bnarny kod Gray a G () g d g d-... g jest zdefnowany następująco: g ( + + ) mod dla,,..., d-. g d d. Przykład G(9) G() 4 7/38 PRR Wykład 9

Programowane Równoległe Rozproszone Wykład MNOŻENIE MACIERZY Istneje funkcja odwrotna do G: G - Jak netrudno zauważyć, jeżel r r d r d-... r to G - (r) h d h d-... h, gdze h d r d oraz h (h + - r ) mod Przykład (c.d.) G - (4) G-() 9 8/38 PRR Wykład Twerdzene. Nech c ędą dwoma d-towym narnym lczam takm, że d k oraz c + k-. Wtedy odległość Hammnga d H pomędzy G() a G(c) wynos 9/38 PRR Wykład Przykład: narne Kod Gray a k c+ d H (,c) k c+ d H (,c) k3 c+ d H (,c) 3/38 PRR Wykład

Programowane Równoległe Rozproszone Wykład Następujący pseudokod przedstawa wymagane olczena. Kod ten dzała na wszystkch węzłach równocześne. Funkcja node_d()zwraca adres narny węzła, funkcja G() zwraca kod Gray a dla wartośc, G - () zwraca odwrotność kodu Gray a dla. Początkowo, węzeł G() zawera element q. Q oznacza ten element (lokalne dla węzła G()). Pod konec olczeń, węzeł G() zawera loczyn q *q - *...* q. Bez straty ogólnośc zakładamy, że n d. 3/38 PRR Wykład vod Parallel_Pref( nt d, quantty Q) { G - (node_d()); } for ( k ; k<d;k++) { } f ( {,..., d k- }) wysłane Q do procesora G( + k- ); f ( { k-,..., d }) Q temp_q * Q; oderane temp_q; 3/38 PRR Wykład Czas: PP na hper-kostce z n węzłam wymaga: Krok : 3 równoległe operacje arytmetyczne Krok : log n równoległych operacj arytmetycznych oraz ( * log n ) operacj komunkacyjnych Krok 3: operacja arytmetyczna Krok 4: log n operacj komunkacyjnych oraz równoległa operacja arytmetyczna 33/38 PRR Wykład

Programowane Równoległe Rozproszone Wykład Zazwyczaj, lcza procesorów p <<n. Nech m * p n. Przydzelamy m elementów wykonujemy na nch algorytm SP, na każdym procesorze. Potem znajdujemy przedrostk loków loczynów p stosując algorytm PP. Procesor wysyła ten loczyn do procesorów +j. Dane te są wtedy mnożone ze wszystkm, poza ostatnm, elementam na procesorze, który je oderał 34/38 PRR Wykład 3 3 3 3 3 3 3 3 4 43 43 43 43 43 43 4 5 5 53 5 5 5 5 5 6 6 6 6 6 6 6 6 7 76 76 76 76 76 76 7 8 8 86 86 8 8 8 8 9 9 9 9 9 9 9 9 A A9 A9 A9 A9 A9 A9 A B B B9 B6 B6 B B B Równoległy algorytm przedrostkowy dla n oraz p 4 35/38 PRR Wykład Początkowo przydzelamy elementy : q (+)*m-, q (+)*m-,..., q *m do węzła G(). Elementy te oznaczamy jako Q m, Q m-,..., Q. Po algorytme SP otrzymujemy : Q m * Q m- *... * Q q (+)*m- * q (+)*m- *...* q *m Po algorytme PP każdy węzeł G() zawera: q *m * q *m- *... * q...... q (+)*m- * q (+)*m-3 *... * q *m * * q * q q (+)*m- *q (+)*m- * q (+)*m-3 *... * q *m * * q * q. 36/38 PRR Wykład

Programowane Równoległe Rozproszone Wykład Czas: Algorytm PP dla n m * p wymaga: 35*n /p +* log p 9 równoległych operacj arytmetycznych; 3*log p operacj komunkacyjnych. 37/38 PRR Wykład Równoległy algorytm przedrostkowy Algorytm ten przedstawl: Egecoglu, E., Koc, K., Lau, A.J., A recursve doulng algorthm for soluton of trdagonal systems on hypercue multprocessors, Journal od Comp. And Appl. Math., 7 (989), pp. 95-8 38/38 PRR Wykład 3