Pobieranie prezentacji. Proszę czekać

Pobieranie prezentacji. Proszę czekać

Zadanie z dekompozycji

Podobne prezentacje


Prezentacja na temat: "Zadanie z dekompozycji"— Zapis prezentacji:

1 Zadanie z dekompozycji
Algorytmy Równoległe Bartosz Baliś

2 Informacje ogólne Zadania z dekompozycji domenowej
Tematy dzielą się na trudniejsze (z modelem fizycznym) i łatwiejsze Realizacja w grupach 2-osobowych Oddawanie w etapach

3 Zagadnienia Algorytm równoległy dla wybranego problemu Symulacja
metodologia PCAM ew. zamiana ciągłego modelu fizycznego na dyskretny Symulacja warunki brzegowe i początkowe zapisywanie danych z kolejnych kroków symulacji warunek stopu Wizualizacja on-line lub off-line zbieranie danych z symulacji Pomiar wydajności w zależności od stopnia aglomeracji Sprawozdanie

4 Zadania – informacje ogólne
Symulacja zmiany jakiejś wielkości w czasie w dziedzinie dwuwymiarowej W niektórych zadaniach zadany model fizyczny – równania różniczkowe cząstkowe 2 stopnia w trudniejszych modelach czas występuje explicite jako składowa równania

5 Zasada konstrukcji algorytmu
Podział dziedziny na siatkę 2-D (o stałym skoku) w implementacji nie występują wymiary fizyczne, jedynie liczba punktów siatki Wymóg: dekompozycja dwuwymiarowa (każde zadanie dostaje wycinek domeny – „podmacierz”) Szukamy formuły iteracyjnej typu: hi,jt+1 = f(ht) gdzie: hij – szukana wielkość w punkcie (i,j) siatki t – dany krok symulacji Implementacja w MPI

6 Przykład dyskretyzacji modelu fizycznego
W równaniu opisującym problem, np.: d2h/dx2 + d2h/dy2 = 0 Zmieniamy pochodne cząstkowe na ilorazy różnicowe: dh/dx = (hi+1,j–hi-1,j) / ∆x d2h/dx2 = (hi+1,j–2hi,j+hi–1,j) / ∆x2 W przypadku pochodnej po czasie: dh/dt = (hijt–hijt-1) / ∆t hijt-1 to wartość obliczanej wielkość w danym punkcie siatki w poprzednim kroku symulacji Następnie wyliczamy hij

7 Symulacja Obliczanie w kolejnych iteracjach szukanej wielkości we wszystkich punktach siatki W danym kroku do obliczenia konieczne są zwykle wartości sąsiadów Jeśli wartości sąsiedniego punktu są w innym procesie, konieczna jest komunikacja

8 Warunki brzegowe i początkowe
Warunki brzegowe – parametry układu na jego brzegu (poza obszarem badanym) Np. temperatura płytki na brzegu Warunki początkowe – stan układu w iteracji „zerowej” Np. temperatura początkowa płytki, początkowe wychylenie membrany

9 Zapisywanie kolejnych kroków symulacji
Konieczne gdy wizualizacja jest off-line Dwie możliwości: w każdym kroku zbieramy dane z wszystkich zadań i zapisujemy je w globalnym pliku każde zadanie zapisuje lokalnie częściowy przebieg symulacji, zaś na końcu wszystkie pliki są zbierane i scalane

10 Warunek stopu symulacji
Czasem go nie ma ... Z góry zadajemy liczbę kroków Czasem symulacja ma się zakończyć po osiągnięciu pewnego stanu Np. problem kolorowania obszarów W każdym kroku konieczna dodatkowa komunikacja (globalna?), żeby sprawdzić czy osiągnięto warunek stopu

11 Wizualizacja On-line – wizualizacja w trakcie trwania symulacji
Konieczne połączenie programu wizualizującego z aplikacją MPI ... Lub MPI w każdym kroku generuje plik i wysyła sygnał do programu wizualizacyjnego Off-line – wizualizacja po zakończeniu symulacji, na podstawie pliku śladu Konieczne zapisanie całego przebiegu symulacji w pliku Można samemu napisać aplikację lub użyć zestawu funkcji MPE_xxxx – rozszerzenie MPI!

12 Pomiar wydajności Badanie czasu wykonania symulacji w zależności od stopnia aglomeracji ... Minimalny – wszystkie dane w jednym procesie Maksymalny – jeden punkt siatki w jednym procesie W praktyce byłoby za dużo procesów – trzeba ograniczyć, np. do podziału pomiędzy 16 procesów ... a także od rozmiaru problemu (całkowitej liczbie punktów siatki)

13 Sprawozdanie Opis algorytmu, opis implementacji, wyniki pomiarów wydajności Opis zastosowania schematu PCAM – zwłaszcza checklist dla kolejnych etapów Partitioning, communication, agglomeration, mapping


Pobierz ppt "Zadanie z dekompozycji"

Podobne prezentacje


Reklamy Google