Równoległe symulacje Monte Carlo na współdzielonej sieci Szymon Murawski, Grzegorz Musiał, Grzegorz Pawłowski Wydział Fizyki, Uniwersytet im. Adama Mickiewicza 12 maja 2015 S. Murawski, G. Musiał, G. Pawłowski (WF UAM) Równoległe symulacje Monte Carlo 12 maja 2015 1 / 16
Spis treści 1 Wstęp Cel badań Badany model Symulacje Monte Carlo Podział sieci Komunikacja MPI 2 Wyniki Podział na paski Podział na bloki Komunikacja w standardzie MPI-1 Równoległe symulacje w wielkim rozkładzie kanonicznym 3 Podsumowanie S. Murawski, G. Musiał, G. Pawłowski (WF UAM) Równoległe symulacje Monte Carlo 12 maja 2015 2 / 16
Wstęp Cel badań Cel badań Zwiększenie wydajności symulacji Monte Carlo poprzez zastosowanie przetwarzania równoległego Porównanie różnych metod komunikacji biblioteki MPI S. Murawski, G. Musiał, G. Pawłowski (WF UAM) Równoległe symulacje Monte Carlo 12 maja 2015 3 / 16
Wstęp Badany model Rozszerzony model Hubbarda Model U-J H = U n i n i 2J s i s j µ n i i <i,j> i U - oddz. kulombowskie, J - oddz. magnetyczne, s i - spin, n i - ilość cząstek, µ -potencjał chemiczny. Krok Monte Carlo: create, move, destroy. Limit: n = 1, U, sieć kwadratowa S. Murawski, G. Musiał, G. Pawłowski (WF UAM) Równoległe symulacje Monte Carlo 12 maja 2015 4 / 16
Wstęp Badany model Rozszerzony model Hubbarda Model U-J H = U n i n i 2J s i s j µ n i i <i,j> i U - oddz. kulombowskie, J - oddz. magnetyczne, s i - spin, n i - ilość cząstek, µ -potencjał chemiczny. Krok Monte Carlo: create, move, destroy. Limit: n = 1, U, sieć kwadratowa Model Isinga H = J <i,j> s i s j Jeden spin na węzeł sieci, tylko oddziaływanie magnetyczne Spin przyjmuje tylko dwie wartości s = ±1 Krok Monte Carlo: obrót jednego spinu S. Murawski, G. Musiał, G. Pawłowski (WF UAM) Równoległe symulacje Monte Carlo 12 maja 2015 4 / 16
Wstęp Symulacje Monte Carlo Symulacje Monte Carlo Procedura Monte Carlo 1 Ustal wartości parametrów oddziaływania, wielkość sieci itp. 2 Ustal stan początkowy x 3 Utwórz próbną konfigurację x (obracając spin) 4 Jeśli E < 0 exp( E/k B T ) < random(0, 1) x = x, jeśli nie x = x 5 mcs + +, wróć do 3. 6 Powtarzaj do ustalonej wcześniej wartości mcs Część wygenerowanych stanów odrzucamy termalizacja. Jakoś wyników zależy od ilości kroków oraz wielkości sieci. Czas obliczeń proporcjonalny do L 2, możemy badać tylko układy skończone. Wyniki dla różnych wielkości układu + teoria skalowania = rezultaty dla układów makroskopowych. Aktualizacje klastrowe zamiast lokalnych nie do zastosowania dla wielkiego rozkładu kanonicznego. S. Murawski, G. Musiał, G. Pawłowski (WF UAM) Równoległe symulacje Monte Carlo 12 maja 2015 5 / 16
Wstęp Podział sieci Podział sieci Podział na paski Sieć o wymiarach L L dzielimy na p procesów Każdy otrzymuje pasek o wielkości L L/p Na lokalnej sieci jest wykonywana standardowa procedura MC, potem wyniki są zbierane Dla stanów na krawędzi proces komunikuje się z sąsiadami Stała liczba sąsiadów: 2L S. Murawski, G. Musiał, G. Pawłowski (WF UAM) Równoległe symulacje Monte Carlo 12 maja 2015 6 / 16
Wstęp Podział sieci Podział sieci Podział na paski Sieć o wymiarach L L dzielimy na p procesów Każdy otrzymuje pasek o wielkości L L/p Na lokalnej sieci jest wykonywana standardowa procedura MC, potem wyniki są zbierane Dla stanów na krawędzi proces komunikuje się z sąsiadami Stała liczba sąsiadów: 2L Podział na bloki Sieć dzielona na bloki o najmniejszym obwodzie Jeśli p = x 2 kwadraty, jeśli p = liczba pierwsza paski, dla innych prostokąty Stosunek stanów brzegowych do wszystkich 4 p/l, przy 2(p + 1)/L dla podziałów na paski S. Murawski, G. Musiał, G. Pawłowski (WF UAM) Równoległe symulacje Monte Carlo 12 maja 2015 6 / 16
Wstęp Podział sieci Dystrybucja sieci na równoległe procesy S. Murawski, G. Musiał, G. Pawłowski (WF UAM) Równoległe symulacje Monte Carlo 12 maja 2015 7 / 16
Wstęp Podział sieci Ilość stanów na brzegach S. Murawski, G. Musiał, G. Pawłowski (WF UAM) Równoległe symulacje Monte Carlo 12 maja 2015 8 / 16
Wstęp Komunikacja MPI Komunikacja między procesami Komunikacja poprzez remote memory access biblioteki MPI. RMA jest nieblokujące, jednostronne, nie przerywa obliczeń u sąsiadów. S. Murawski, G. Musiał, G. Pawłowski (WF UAM) Równoległe symulacje Monte Carlo 12 maja 2015 9 / 16
Wyniki Podział na paski Podział na paski Speedup S = tseq /tpar, Efficiency E = S/p S. Murawski, G. Musiał, G. Pawłowski (WF UAM) Równoległe symulacje Monte Carlo 12 maja 2015 10 / 16
Wyniki Podział na bloki Podział na bloki Speedup S = tseq /tpar, Efficiency E = S/p S. Murawski, G. Musiał, G. Pawłowski (WF UAM) Równoległe symulacje Monte Carlo 12 maja 2015 11 / 16
Wyniki Komunikacja w standardzie MPI-1 Komunikacja w standardzie MPI-1 S. Murawski, G. Musiał, G. Pawłowski (WF UAM) Równoległe symulacje Monte Carlo 12 maja 2015 12 / 16
Wyniki Równoległe symulacje w wielkim rozkładzie kanonicznym Dystrybucja sieci w wielkim rozkładzie W WRK krok MC składa się z trzech procedur: tworzenia cząstki, usuwania cząstki oraz przesunięcia na sieci. Tworzenie i usuwanie są operacjami jednowęzłowymi nie ma żadnego problemu. Przesunięcie wymaga informacji o dwóch węzłach potrzeba dodatkowej warstwy komunikacyjnej... S. Murawski, G. Musiał, G. Pawłowski (WF UAM) Równoległe symulacje Monte Carlo 12 maja 2015 13 / 16
Wyniki Równoległe symulacje w wielkim rozkładzie kanonicznym Dystrybucja sieci w wielkim rozkładzie W WRK krok MC składa się z trzech procedur: tworzenia cząstki, usuwania cząstki oraz przesunięcia na sieci. Tworzenie i usuwanie są operacjami jednowęzłowymi nie ma żadnego problemu. Przesunięcie wymaga informacji o dwóch węzłach potrzeba dodatkowej warstwy komunikacyjnej... Albo zbadać jaki wpływ na wyniki ma wprowadzenie sztywnego ograniczenia ruchu elektronów. S. Murawski, G. Musiał, G. Pawłowski (WF UAM) Równoległe symulacje Monte Carlo 12 maja 2015 13 / 16
Wyniki Równoległe symulacje w wielkim rozkładzie kanonicznym Wpływ ograniczenia na jakoś wyników (a) obszar przejść pierwszego rodzaju, (b) drugiego. γ maksymalna odległość na jaką spin może się przemieścić. S. Murawski, G. Musiał, G. Pawłowski (WF UAM) Równoległe symulacje Monte Carlo 12 maja 2015 14 / 16
Podsumowanie Podsumowanie Przedstawiono metodę zmniejszenia czasu symulacji poprzez podział sieci. Efektywność metody rośnie wraz z wielkością sieci, jest odwrotnie proporcjonalna do ilości węzłów brzegowych. Lepszą metodą jest podział na bloki, większy narzut na komunikację jest równoważony znacznie mniejszą ilość stanów brzegowych. Użycie kooperatywnych procedur komunikacji zamiast komunikacji jednostronnej nie prowadzi do zwiększenia efektywności. Wprowadzenie ograniczenia na ruch elektronu na sieci nie zmienia znacząco wyników symulacji. S. Murawski, G. Musiał, G. Pawłowski (WF UAM) Równoległe symulacje Monte Carlo 12 maja 2015 15 / 16
Podsumowanie Koniec 1 Wstęp Cel badań Badany model Symulacje Monte Carlo Podział sieci Komunikacja MPI 2 Wyniki Podział na paski Podział na bloki Komunikacja w standardzie MPI-1 Równoległe symulacje w wielkim rozkładzie kanonicznym 3 Podsumowanie S. Murawski, G. Musiał, G. Pawłowski (WF UAM) Równoległe symulacje Monte Carlo 12 maja 2015 16 / 16