Nowoczesne technologie przetwarzania informacji

Podobne dokumenty
WikiWS For Business Sharks

Zaawansowane metody numeryczne

Zadanie na wykonanie Projektu Zespołowego

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

ROZWIĄZYWANIE DWUWYMIAROWYCH USTALONYCH ZAGADNIEŃ PRZEWODZENIA CIEPŁA PRZY POMOCY ARKUSZA KALKULACYJNEGO

Programowanie Równoległe i Rozproszone

CAŁKOWANIE NUMERYCZNE całki pojedyncze

METODA ELEMENTU SKOŃCZONEGO. Termokinetyka

V. WPROWADZENIE DO PRZESTRZENI FUNKCYJNYCH

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

(M2) Dynamika 1. ŚRODEK MASY. T. Środek ciężkości i środek masy

u u u( x) u, x METODA RÓŻNIC SKOŃCZONYCH, METODA ELEMENTÓW BRZEGOWYCH i METODA ELEMENTÓW SKOŃCZONYCH

Proces narodzin i śmierci

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

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

Plan wykładu: Typowe dane. Jednoczynnikowa Analiza wariancji. Zasada: porównać zmienność pomiędzy i wewnątrz grup


STATYSTYKA MATEMATYCZNA WYKŁAD 5 WERYFIKACJA HIPOTEZ NIEPARAMETRYCZNYCH

SYSTEMY UCZĄCE SIĘ WYKŁAD 5. LINIOWE METODY KLASYFIKACJI. Dr hab. inż. Grzegorz Dudek Wydział Elektryczny Politechnika Częstochowska.

Rozwiązywanie zadań optymalizacji w środowisku programu MATLAB

Wykład 2: Uczenie nadzorowane sieci neuronowych - I

Laboratorium ochrony danych

TRANZYSTOR BIPOLARNY CHARAKTERYSTYKI STATYCZNE

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

Problem plecakowy (KNAPSACK PROBLEM).

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

Nowoczesne technologie przetwarzania informacji

I. Elementy analizy matematycznej

n liczba zmiennych decyzyjnych c współczynniki funkcji celu a współczynniki przy zmienych decyzyjnych w warunkach

Diagonalizacja macierzy kwadratowej

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

Ile wynosi suma miar kątów wewnętrznych w pięciokącie?

Zmodyfikowana technika programowania dynamicznego

Podstawy teorii falek (Wavelets)

Wykład 2: Uczenie nadzorowane sieci neuronowych - I

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

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

Metody badań kamienia naturalnego: Oznaczanie współczynnika nasiąkliwości kapilarnej

Badania operacyjne w logistyce i zarządzaniu produkcją

XLI OLIMPIADA FIZYCZNA ETAP WSTĘPNY Zadanie teoretyczne

OPTYMALIZACJA ALGORYTMÓW WYZNACZANIA RUCHU CIECZY LEPKIEJ METODĄ SZTUCZNEJ ŚCIŚLIWOŚCI

KONSPEKT WYKŁADU. nt. METODA ELEMENTÓW SKOŃCZONYCH TEORIA I ZASTOSOWANIA. Piotr Konderla

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

Macierz prawdopodobieństw przejścia w pojedynczym kroku dla łańcucha Markowa jest postaci

4. Zjawisko przepływu ciepła

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

Sztuczne sieci neuronowe

Wstęp do informatyki. Maszyna RAM. Schemat logiczny komputera. Maszyna RAM. RAM: szczegóły. Realizacja algorytmu przez komputer

Weryfikacja hipotez dla wielu populacji

PORÓWNANIE DWÓCH NIEOSOBLIWYCH METOD TREFFTZA NA PRZYKŁADZIE DWUWYMIAROWEGO ZAGADNIENIA LAPLACE A, CZ. 2

65120/ / / /200

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

Analiza danych OGÓLNY SCHEMAT. Dane treningowe (znana decyzja) Klasyfikator. Dane testowe (znana decyzja)

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

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

Dobór procesora sygnałowego w konstrukcji regulatora optymalnego

Współczynnik przenikania ciepła U v. 4.00

Przygotowanie kilku wersji kodu zgodnie z wymogami wersji zadania,

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

Zastosowanie symulatora ChemCad do modelowania złożonych układów reakcyjnych procesów petrochemicznych

) będą niezależnymi zmiennymi losowymi o tym samym rozkładzie normalnym z następującymi parametrami: nieznaną wartością 1 4

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

Matematyka dyskretna. Andrzej Łachwa, UJ, /15

ZASTOSOWANIE KLASYCZNEGO ALGORYTMU GENETYCZNEGO DO ROZWIĄZANIA ZBILANSOWANEGO ZAGADNIENIA TRANSPORTOWEGO

Równoległe symulacje Monte Carlo na współdzielonej sieci

Przykład 5.1. Kratownica dwukrotnie statycznie niewyznaczalna

11/22/2014. Jeśli stała c jest równa zero to takie gry nazywamy grami o sumie zerowej.

Temat: Operacje elementarne na wierszach macierzy

Matematyka dyskretna. Andrzej Łachwa, UJ, /14

WYZNACZENIE ODKSZTAŁCEŃ, PRZEMIESZCZEŃ I NAPRĘŻEŃ W ŁAWACH FUNDAMENTOWYCH NA PODŁOŻU GRUNTOWYM O KSZTAŁCIE WYPUKŁYM

PRZETWARZANIE RÓWNOLEGŁE I ROZPROSZONE. Mnożenie macierzy kwadratowych metodą klasyczną oraz blokową z wykorzystaniem OpenMP.

Operacje grupowego przesyłania komunikatów. Krzysztof Banaś Obliczenia równoległe 1

Wykład 1 Zagadnienie brzegowe liniowej teorii sprężystości. Metody rozwiązywania, metody wytrzymałości materiałów. Zestawienie wzorów i określeń.

EFEKTYWNOŚĆ MNOŻENIA MACIERZY W SYSTEMACH Z PAMIĘCIĄ WSPÓŁDZIELONĄ

Komputer kwantowy Zasady funkcjonowania. Dr hab. inż. Krzysztof Giaro Politechnika Gdańska Wydział ETI

Komórkowy model sterowania ruchem pojazdów w sieci ulic.

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

-Macierz gęstości: stany czyste i mieszane (przykłady) -równanie ruchu dla macierzy gęstości -granica klasyczna rozkładów kwantowych

SZTUCZNA INTELIGENCJA

ANALIZA EFEKTYWNOŚCI MNOŻENIA MACIERZY W SYSTEMACH Z PAMIĘCIĄ WSPÓŁDZIELONĄ

Płyny nienewtonowskie i zjawisko tiksotropii


Stateczność układów ramowych

Wstęp Funkcja pliki nagłówkowe i typ tablicowy. Wstęp Pliki nagłówkowe i typ tablicowy. Wstęp Funkcja fill_array() Wstęp. Notatki. Notatki.

SZYBKI ALGORYTM Z MACIERZĄ SHURA DLA MACIERZY TRÓJDIAGONALNYCH

7.8. RUCH ZMIENNY USTALONY W KORYTACH PRYZMATYCZNYCH

Systemy Ochrony Powietrza Ćwiczenia Laboratoryjne

Procedura normalizacji

Sortowanie szybkie Quick Sort

Definicje ogólne

1. OKREŚLENIE PARAMETRÓW GEOTECHNICZNYCH

Fizyka, technologia oraz modelowanie wzrostu kryształów

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

SZACOWANIE NIEPEWNOŚCI POMIARU METODĄ PROPAGACJI ROZKŁADÓW

Algorytmy dla maszyny PRAM

SZTUCZNA INTELIGENCJA

Hipotezy o istotności oszacowao parametrów zmiennych objaśniających ˆ ) ˆ

SYMULACJA KOMPUTEROWA NAPRĘŻEŃ DYNAMICZNYCH WE WRĘGACH MASOWCA NA FALI NIEREGULARNEJ

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

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

Transkrypt:

Proekt Nowe metody naczana w matematyce Nr POKL.09.04.00-4-33/ Nowoczesne technologe przetwarzana nformac Mgr Mace Cytowsk (ICM UW) Lekca 3: Przykłady algorytmów równoległych w ramach Eropeskego Fndsz Społecznego

Wstęp Zaprezentemy przykłady algorytmów oraz mechanzmów równoległych:. Równoległe oblczane lczby P. Algorytm Cannon a 3. Równane Posson a 4. Metody dekompozyc oblczeń krzywe wypełnaące przestrzeń 5. Własny algorytm równoległy średnane tablcy z danym. w ramach Eropeskego Fndsz Społecznego

Równoległe oblczane lczby P Całkowane metodą prostokątów następącego wzor: 4 n 4 x 0 0 0.5 ( ) n h w ramach Eropeskego Fndsz Społecznego 3

Oblczane lczby P schemat algorytm Dekompozyca podzał na podzadana Przedzał [0,] dzelmy na równe częśc Oblczena Każde podzadane polega na oblczen smy dla rozpatrywanego podprzedzał Wynkem est edna lczba zmennoprzecnkowa Oblczena są całkowce nezależne (brak komnkac podczas oblczeń) Redkca Zebrane wynków poszczególnych zadań Komnkaca na końc algorytm w ramach Eropeskego Fndsz Społecznego 4

Oblczane lczby P kod C nt man (nt argc, char *argv[]) { } nt,n; doble smp, mypart, x; doble p; n = 00000000; smp = 0.0; #pragma omp parallel for defalt(none) prvate(,x,mypart) shared(n) redcton(+:smp) for(=0;<n;++) { } x = ( + 0.5) / n; mypart =.0/(.0 + x*x); smp = smp + mypart; #pragma omp crtcal p = 4.0*smp/n; prntf("%lf\n",p); w ramach Eropeskego Fndsz Społecznego 5

Oblczane lczby P kod C OpenMP nt man (nt argc, char *argv[]) { } nt,n; doble smp, mypart, x; doble p; n = 00000000; smp = 0.0; #pragma omp parallel for defalt(none) prvate(,x,mypart) shared(n) redcton(+:smp) for(=0;<n;++) { } x = ( + 0.5) / n; mypart =.0/(.0 + x*x); smp = smp + mypart; #pragma omp crtcal p = 4.0*smp/n; prntf("%lf\n",p); w ramach Eropeskego Fndsz Społecznego 6

Algorytm Cannon a Algorytm Cannon a to równoległy algorytm oblczana mnożena macerzy za pomocą podzały na dwwymarową satkę. Algorytm atorstaw Lynn Ellot Cannon a został opsany w rok 969. 7 w ramach Eropeskego Fndsz Społecznego

Algorytm Cannon a - krok Zorganz dostępne procesory w satkę NxN (P=NxN) Podzel macerze A oraz B na P kwadratowych bloków Oznacz procesory od P(0,0) do P(N-,N-) Wstępne przypsz blok A(,) oraz B(,) do procesów P(,) Wykona wstępne przesnęce (pokazane na następnym sladze) Wykona przemnożene bloków przesnęce (pokazane na następnym sladze) Wykona poprzedn krok N- razy 8 w ramach Eropeskego Fndsz Społecznego

Algorytm Cannon a: schemat komnkac A(0,0) A(0,) A(0,) A(0,3) B(0,0) B(0,) B(0,) B(0,3) A(,0) A(,) A(,) A(,3) B(,0) B(,) B(,) B(,3) A(,0) A(,) A(,) A(,3) B(,0) B(,) B(,) B(,3) A(3,0) A(3,) A(3,) A(3,3) B(3,0) B(3,) B(3,) B(3,3) Intal algnment of A Intal algnment of B A(0,0) B(0,0) A(0,) B(,) A(0,) B(,) A(0,3) B(3,3) A(0,) B(,0) A(0,) B(,) A(0,3) B(3,) A(0,0) B(0,3) A(,) B(,0) A(,) B(,) A(,3) B(3,) A(,0) B(0,3) A(,) B(,0) A(,3) B(3,) A(,0) B(0,) A(,) B(,3) A(,) B(,0) A(,3) B(3,) A(,0) B(0,) A(,) B(,3) A(,3) B(3,0) A(,0) B(0,) A(,) B(,) A(,) B(,3) A(3,3) B(3,0) A(3,0) B(0,) A(3,) B(,) A(3,) B(,3) A(3,0) B(0,0) A(3,) B(,) A(3,) B(,) A(3,3) B(3,3) 9 Sbmatrx locaton Proekt after ntal współfnansowany shft Sbmatrx przez Unę locaton Eropeską after st shft w ramach Eropeskego Fndsz Społecznego

Algorytm Cannon a fragment kod C MPI for(shft=0;shft<dms[0];shft++) { // Mnozene macerzy for(=0;<nl;++) for(k=0;k<nl;k++) for(=0;<nl;++) C[*Nl+]+=A[*Nl+k]*B[k*Nl+]; f(shft==dms[0]-) break; } // Wymana blokow MPI_Sendrecv(A,Nl*Nl,MPI_DOUBLE,left,,bf,Nl*Nl,MPI_DOUBLE,rght,,cannon_comm,&stats); tmp=bf; bf=a; A=tmp; MPI_Sendrecv(B,Nl*Nl,MPI_DOUBLE,p,,bf,Nl*Nl,MPI_DOUBLE,down,,cannon_comm,&stats); tmp=bf; bf=b; B=tmp; w ramach Eropeskego Fndsz Społecznego 0

Równane Posson a w ramach Eropeskego Fndsz Społecznego

Równane Posson a rozwązane Dyskretyzaca - satka oblczenowa: b a x a h x h x 0n n y c h y h y d c n Metoda różnc skończonych: 0n ( x, y) x y x, [, ] h,, w ramach Eropeskego Fndsz Społecznego

Równane Posson a kład r-ń lnowych f h h,,,,,,,,,,,,, 4 h f 0 n 0 n,,,0,,,0 0, 0, 0,0,,,0,,,0 0, 0, 0,0 4 4 4 4 4 4 4 4 4 f h f h f h f h f h f h f h f h f h 3 w ramach Eropeskego Fndsz Społecznego

Równane Posson a metoda teracyna Macerz rzadka rozwązane metodą teracyną Jacob ego Tzw. 5-pnktowy krzyżak (fve pont stencl) w ramach Eropeskego Fndsz Społecznego 4

Równane Posson a realzaca równoległa Podzał satk oblczenowe pomędzy procesoram pask. Nektóre oblczena mogą być wykonywane nezależne (oblczena wewnątrz pasków). Oblczena wartośc brzegowych wymagaą znaomośc wartośc oblczanych w sąsednch paskach na sąsednch procesorach. Komnkaca całych werszy wartośc brzegowych (tzw. hal). Synchronzaca po każdym krok terac Jacob ego, aby meć pewność, że w każdym momence wszystke procesory wykoną tą samą teracę. w ramach Eropeskego Fndsz Społecznego 5

Pamęć rozproszona Równane Posson a realzaca równoległa RAM CPU RAM CPU RAM3 CPU3 RAM4 CPU4 w ramach Eropeskego Fndsz Społecznego 6

Pamęć rozproszona Równane Posson a realzaca równoległa RAM CPU RAM CPU RAM3 CPU3 RAM4 CPU4 w ramach Eropeskego Fndsz Społecznego 7

Pamęć rozproszona Równane Posson a realzaca równoległa RAM CPU RAM CPU RAM3 CPU3 RAM4 CPU4 w ramach Eropeskego Fndsz Społecznego 8

Metody dekompozyc oblczeń Przedstawmy metodę dekompozyc oblczeń za pomocą krzywych wypełnaących przestrzeń na przykładze kodów żywaących metod cząstek (ang. partcle methods). w ramach Eropeskego Fndsz Społecznego 9

Problem oblczenowy: cząstk Równoległe wylczane oddzaływań pomędzy cząstkam w przestrzen 3D Losemy N cząstek w przestrzen 3D Cząstk oddzaływą na sebe Każdy krok symlac polega na wylczen oddzaływań, wylczen wektorów przesnęć, przesnęc cząstek na nową pozycę. Zadane ma być zrealzowane na lczbe P procesorów Zastosowana to m.n.: Kosmologa Bologa moleklarna Fzyka plazmy Symlace kolon komórek w ramach Eropeskego Fndsz Społecznego 0

Równoważene obcążena Load balancng = podzał oblczeń pomędzy dostępne procesory Aby zmnmalzować czas wykonana program równoległego należy zapewnć równomerne rozłożene oblczeń Jak efektywne rozdzelć pracę w probleme cząstek pomędzy procesoram? Rozwązane nawne: Dokonać podzał kostk 3D na P równych częśc przypsać każdem procesorow zawarte w danym fragmence kostk cząstk, Uwaga: otrzymany w ten sposób podzał może powodować nerównomerne rozłożene lczby cząstek pomędzy procesoram Do czego to prowadz? w ramach Eropeskego Fndsz Społecznego

Równoważene obcążena Nerównomerne rozłożene = dłższy czas oblczeń oraz brak skalowalnośc Jak nacze rozwązać ten problem? w ramach Eropeskego Fndsz Społecznego

Topologczne defnce krzywe W rok 887 Camlle Jordan podał następącą defncę krzywe (nazywane dzsa krzywą Jordana): Krzywa est to fnkca cągła określona na odcnk [0,] Wydawało sę, że est to defnca neźle oddaąca ntcę matematyków. W wel przypadkach obrazy odcnka [0,] są tym co chcelbyśmy nazwać lną. Defnca ta okazała sę być ednak zbyt szeroka. Trzy lata późne włosk matematyk Gseppe Peano podał przykład krzywe w sense Jordana, który kłócł sę z natralną ntcą. Okazało sę, że cągłym obrazem odcnka może być cały kwadrat! Nezależne od Peano podobną krzywą rozpatrywał skonstrował w tym samym czase Davd Hlbert. w ramach Eropeskego Fndsz Społecznego 3

Krzywe Peano-Hlberta Krzywe wypełnaące przestrzeńto cągłe odwzorowane przekształcaące odcnek ednostkowy [0,] na n-wymarową kostkę ednostkową. V.Sprngel The cosmologcal smlaton code GADGET-, Mon. Not. R. Astron. Soc. 364, 05 34 (005) Krzywa Hlberta w D: Startemy z kształt U w satce x Podstawę U zamenamy na dwa take same kształty U Na bokach U meszczamy obrócone kształty U (po ednym na każdym) W ten sposób przechodzmy do satk 4x4 Powtarzaąc to dzałane teracyne przechodzmy do satek n x n Dla każdego pnkt w kostce n-wymarowe esteśmy w stane znaleźć odpowadaący m pnkt z przedzał [0,] w ramach Eropeskego Fndsz Społecznego 4

Równoważene obcążena za pomocą krzywych P-H Dla każdego pnkt z kostk (D lb 3D) znaleźć odpowadaący m pnkt przedzał [0,]. Dokonać cęca otrzymane krzywe P-H na fragmenty zaweraące równe lośc pnktów z kostk. Przypsać otrzymane fragmenty krzywe P-H procesorom. Podzały tego typ maą bardzo ważną własność lokalnośc geometryczne, która est nezmerne przydatna przy oblczenach oddzaływań cząstek. w ramach Eropeskego Fndsz Społecznego 5

Własny algorytm równoległy Uśrednane tablcy z danym Inpt: tablca D z lczbam zmennoprzecnkowym Algorytm: każdem elementow tablcy przypsemy średną ego dwóch sąsadów proces ten wykonemy N-razy Otpt: tablca z wygładzonym danym Jak należy podzelć dane pomędzy procesam? Kedy nezbędna będze komnkaca? Jak wyglądać będze tzw. halo wymany pomędzy procesam? w ramach Eropeskego Fndsz Społecznego 6