Symulacje kinetyczne Par2cle In Cell w astrofizyce wysokich energii Wykład 7

Podobne dokumenty
Algorytmy i Struktury Danych

Architektura komputerów

Budowa komputera. Magistrala. Procesor Pamięć Układy I/O

Budowa komputera. Magistrala. Procesor Pamięć Układy I/O

Architektura komputerów

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

Składowanie, archiwizacja i obliczenia modelowe dla monitorowania środowiska Morza Bałtyckiego

Sprzęt komputerowy 2. Autor prezentacji: 1 prof. dr hab. Maria Hilczer

Obliczenia Wysokiej Wydajności

Sprzęt komputerowy 2. Autor prezentacji: 1 prof. dr hab. Maria Hilczer

Architektury komputerów Architektury i wydajność. Tomasz Dziubich

High Performance Computers in Cyfronet. Andrzej Oziębło Zakopane, marzec 2009

Wprowadzenie. Klastry komputerowe. Superkomputery. informatyka +

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

Obliczenia Wysokiej Wydajności

Wykład 8 Systemy komputerowe ze współdzieloną pamięcią operacyjną, struktury i cechy funkcjonalne.

Procesory wielordzeniowe (multiprocessor on a chip) Krzysztof Banaś, Obliczenia wysokiej wydajności.

Wydajność systemów a organizacja pamięci, czyli dlaczego jednak nie jest aż tak źle. Krzysztof Banaś, Obliczenia wysokiej wydajności.

1. ARCHITEKTURY SYSTEMÓW KOMPUTEROWYCH

Architektura komputerów

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

Budowa karty sieciowej; Sterowniki kart sieciowych; Specyfikacja interfejsu sterownika sieciowego; Open data link interface (ODI); Packet driver

Systemy rozproszone. na użytkownikach systemu rozproszonego wrażenie pojedynczego i zintegrowanego systemu.

Wprowadzenie. Co to jest klaster? Podział ze względu na przeznaczenie. Architektury klastrów. Cechy dobrego klastra.

Architektura mikroprocesorów TEO 2009/2010

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

Komputery Dużej Mocy w Cyfronecie. Andrzej Oziębło Patryk Lasoń, Łukasz Flis, Marek Magryś

PROGRAMOWANIE WSPÓŁCZESNYCH ARCHITEKTUR KOMPUTEROWYCH DR INŻ. KRZYSZTOF ROJEK

Architektura komputerów

Nowoczesne technologie przetwarzania informacji

Podstawy Techniki Mikroprocesorowej wykład 13: MIMD. Dr inż. Jacek Mazurkiewicz Katedra Informatyki Technicznej

21 Model z pamięcią współdzieloną (model PRAM) - Parallel Random Access Machine

Wydajność systemów a organizacja pamięci. Krzysztof Banaś, Obliczenia wysokiej wydajności. 1

Procesory wielordzeniowe (multiprocessor on a chip) Krzysztof Banaś, Obliczenia wysokiej wydajności.

i3: internet - infrastruktury - innowacje

Wrocławskie Centrum Sieciowo-Superkomputerowe

Systemy operacyjne i sieci komputerowe Szymon Wilk Superkomputery 1

PWSZ w Tarnowie Instytut Politechniczny Elektrotechnika

PROGRAMOWANIE WSPÓŁCZESNYCH ARCHITEKTUR KOMPUTEROWYCH DR INŻ. KRZYSZTOF ROJEK

Dwa lub więcej komputerów połączonych ze sobą z określonymi zasadami komunikacji (protokołem komunikacyjnym).

Wykład 6. Mikrokontrolery z rdzeniem ARM

16. Taksonomia Flynn'a.

Pamięci masowe. ATA (Advanced Technology Attachments)

Technika mikroprocesorowa. Linia rozwojowa procesorów firmy Intel w latach

Algorytmy dla maszyny PRAM

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

O superkomputerach. Marek Grabowski

Komputery równoległe. Zbigniew Koza. Wrocław, 2012

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.

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

USŁUGI HIGH PERFORMANCE COMPUTING (HPC) DLA FIRM. Juliusz Pukacki,PCSS

Budowa Mikrokomputera

155,35 PLN brutto 126,30 PLN netto

Numeryczna algebra liniowa

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

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

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

Magistrala. Magistrala (ang. Bus) służy do przekazywania danych, adresów czy instrukcji sterujących w różne miejsca systemu komputerowego.

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

SUPERKOMPUTER OKEANOS BADAWCZE GRANTY OBLICZENIOWEWE

Zasoby i usługi Wrocławskiego Centrum Sieciowo-Superkomputerowego

Poziom kwalifikacji: I stopnia. Liczba godzin/tydzień: 2W E, 2L PRZEWODNIK PO PRZEDMIOCIE

Tom II: SZCZEGÓŁOWY OPIS PRZEDMIOTU ZAMÓWIENIA (SOPZ): Przedmiotem zamówienia jest dostawa sprzętu infrastruktury serwerowej i sieciowej.

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

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

20. Czy serwerownia spełnia standardowe wymagania techniczne dla takich pomieszczeń?

Larrabee GPGPU. Zastosowanie, wydajność i porównanie z innymi układami

MESco. Testy skalowalności obliczeń mechanicznych w oparciu o licencje HPC oraz kartę GPU nvidia Tesla c2075. Stanisław Wowra

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

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

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

Operacje grupowego przesyłania komunikatów

Spis treści. I. Skuteczne. Od autora... Obliczenia inżynierskie i naukowe... Ostrzeżenia...XVII

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

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

Wydajność systemów a organizacja pamięci. Krzysztof Banaś, Obliczenia wysokiej wydajności. 1

Programowanie współbieżne... (2)

RDZEŃ x86 x86 rodzina architektur (modeli programowych) procesorów firmy Intel, należących do kategorii CISC, stosowana w komputerach PC,

PRZEWODNIK PO PRZEDMIOCIE

Systemy rozproszone System rozproszony

Architektura Systemów Komputerowych. Rozwój architektury komputerów klasy PC

współbieżność - zdolność do przetwarzania wielu zadań jednocześnie

Autor: inż. Wojciech Zatorski Opiekun pracy: dr inż. Krzysztof Małecki

Budowa i zasada działania komputera. dr Artur Bartoszewski

Wydajność systemów a organizacja pamięci. Krzysztof Banaś, Obliczenia wysokiej wydajności. 1

61 Topologie wirtualne

Programowanie procesorów graficznych GPGPU

SYSTEMY OPERACYJNE WYKŁAD 1 INTEGRACJA ZE SPRZĘTEM

Obliczenia równoległe w zagadnieniach inżynierskich. Wykład 4

CUDA Median Filter filtr medianowy wykorzystujący bibliotekę CUDA sprawozdanie z projektu

Obliczenia równoległe na klastrze opartym na procesorze CELL/B.E.

E-E-A-1008-s5 Komputerowa Symulacja Układów Nazwa modułu. Dynamicznych. Elektrotechnika I stopień Ogólno akademicki. Przedmiot kierunkowy

Bajt (Byte) - najmniejsza adresowalna jednostka informacji pamięci komputerowej, z bitów. Oznaczana jest literą B.

Procesory. Schemat budowy procesora

Welcome to the waitless world. Inteligentna infrastruktura systemów Power S812LC i S822LC

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

3.Przeglądarchitektur

dr inż. Jarosław Forenc

Dostęp do europejskich systemów obliczeniowych Tier-0 w ramach PRACE

Opracował: Grzegorz Cygan 2012 r. CEZ Stalowa Wola. Pamięci półprzewodnikowe

Transkrypt:

Symulacje kinetyczne Par2cle In Cell w astrofizyce wysokich energii Wykład 7 dr Jacek Niemiec Instytut Fizyki Jądrowej PAN, Kraków Jacek.Niemiec@ifj.edu.pl www.oa.uj.edu.pl/j.niemiec/symulacjenumeryczne 1

Wielkoskalowe symulacje PIC model obliczeń równoległych Dla wielu zjawisk astrofizycznych efekty mikroskopowe mają wpływ na zjawiska makroskopowe konieczne jest użycie wielkich siatek numerycznych: obliczenia zbyt długotrwałe i wymagające ogromnej pamięci operacyjnej dla sekwencyjnych, jednoprocesorowych kodów PIC. modele PIC rozwiązujące równania różniczkowe w przestrzeni konfiguracyjnej są lokalne całkowanie ruchu danej cząstki lub składowej pola EM w danym punkcie siatki wymaga informacji tylko z najbliższego sąsiedztwa (modele posiadają wewnętrzny paralelizm, dane nieskorelowane) naturalny model obliczeń równoległych (parallel compu0ng) dla symulacji PIC: zbiór procesorów, z których każdy prowadzi obliczenia na ustalonym fragmencie siatki numerycznej (domenie) i cząstkach znajdujących się wewnątrz tej domeny; warunki brzegowe zapewnione poprzez komunikację pomiędzy procesorami (kilkakrotnie w każdym kroku czasowym) Np. dla siatki 45x12 N p =15, domeny 9x4 2

Model obliczeń równoległych dla metody PIC Wydajność i wymagania sprzętowe: szybkość obliczeń uwarunkowana szybkością procesora szybkim dostępem do pamięci operacyjnej szybkością dostępu do pamięci globalnej (operacje odczytu/zapisu danych; I/O) wydajność obliczeń współbieżnych zależna od skalowalności zadania (stopnia sekwencyjności) szybkości komunikacji międzyprocesorowej topologii, architektury i protokołu połączeń balansu rozproszenia zadań obliczeniowych na poszczególne procesory Wielkoskalowe symulacje PIC wysokiej rozdzielczości muszą być prowadzone z użyciem systemów obliczeniowych wysokiej wydajności (high performance compu0ng systems). Użyteczne systemy: komputery współbieżne (masowo równoległe; MPP massively parallel processor) plaxormy obliczeń rozproszonych (klastry) Systemy takie jak klastry PC (typu Beowulf) lub gridy mniej użyteczne ze względu na małą przepustowość połączeń pomiędzy węzłami sieci systemy idealne do symulacji Monte Carlo. 3

Systemy obliczeniowe dla symulacji PIC Systemy obliczeniowe dla symulacji PIC: komputery współbieżne komputery z wieloma procesorami połączonymi ciasno szybką szyną systemową lub siecią; pamięć dzielona (shared) albo rozproszona (distributed) każda związana z jakimś procesorem (zbiorem rdzeni, CPU) plaxormy obliczeń rozproszonych (klastry) zespół stacji roboczych lub procesorów połączonych siecią lub szybkim przełącznikiem; pamięć rozproszona Charakterystyki obu systemów bardzo podobne; komputery współbieżne mają zazwyczaj specjalnie zaprojektowaną architekturę połączeń miedzyprocesorowych, natomiast klastry bazują na ogólno dostępnym sprzęcie do zastosowań sieciowych. Niektóre wspólne charakterystyki sprzętowe systemów wysokiej wydajności: procesory (CPU) 64 bitowe wielordzeniowe (cores) o wysokiej częstości taktowania (~3GHz) możliwość wykonywania wielu instrukcji na jeden cykl o dużej ilości wyspecjalizowanych jednostek instrukcyjnych (np. osobne jednostki do operacji na liczbach całkowitych, I/O, itp.) z szybką, wielopoziomową pamięcią podręczną (cache; L1, L2, L3) lokalność odwołań, pobieranie danych w pakietach 4

Systemy obliczeniowe dla symulacji PIC c.d. Niektóre wspólne charakterystyki sprzętowe systemów wysokiej wydajności: połączenia pomiędzy procesorami (węzłami) oraz z urządzeniami I/O wielokanałowe interfejsy o wysokiej przepustowości (kilkadziesiąt Gbit/s) i niskiej latencji: InfiniBand, 10 Gbit Ethernet, Myrinet wydzielona pamięć operacyjna dla poszczególnych procesorów: 2 4 GB/rdzeń dające łącznie dziesiątki TB pamięci operacyjnej; spójna przestrzeń adresowa oparta na architekturach rodzaju ccnuma (cache coherent Non Uniform Memory Access) systemy plików równoległych umożliwiające jednoczesny dostęp do danych przez kilka oddzielnych procesorów: Lustre, GPFS, CXFS (obecnie PB przestrzeni dyskowej; HOME, SCRATCH) Sieć oparta na architekturze InfiniBand System plików Lustre 5

Przykładowe systemy do obliczeń równoległych Columbia NASA Advanced Supercompu2ng, Ames Research Center, CA (instalacja 2008) klaster 23 systemów SGI Al2x (3700 i 4700; 512 2048 rdzeni; Intel Itanium2 Montecito Dual Core 1.6 GHz, 6 9 MB L2 cache): razem 14336 rdzeni pamięć (DDR SDRAM) 2GB/rdzeń: razem 28.7 TB połączenia InfiniBand i 10Gb Ethernet, system plików CXFS: 1PT przestrzeni dyskowej 88.88 Tflop/s nr 75 na liście Top500 (11/2009) 6

Przykładowe systemy do obliczeń równoległych c.d. Pleiades NASA Advanced Supercompu2ng, Ames Research Center, CA (instalacja 2009) klaster 110 systemów SGI Al2x ICE 8200EX(64 węzły; każdy z 2 4 rdzeniowe procesorami Intel MM64T Xeon Harpertown 3.0 GHz/ Nehalem EP 2.93 GHz, 4 6 MB L2 cache na parę rdzeni): razem 56320 rdzeni pamięć (DDR2/3 FB DIMM) 1 3GB/rdzeń: razem 74.7 TB połączenia InfiniBand, system plików Lustre: 2.8PT przestrzeni dyskowej 673.4 Tflop/s nr 6 na liście Top500 (11/2009) 7

Przykładowe systemy do obliczeń równoległych c.d. Ranger Texas Advanced Compu2ng Center, University of Texas, Aus2n, TX (instalacja 2008, TeraGrid) SUN Blade system MPP (3936 czteroprocesorowe węzły; procesory czterordzeniowe AMD Opteron 2.3 GHz, 2 MB L3 cache dzielona): razem 62976 rdzeni pamięć rozproszona (DDR2) 2GB/rdzeń: razem 126 TB połączenia InfiniBand, system plików Lustre: 1.7PT przestrzeni dyskowej 579.4 Tflop/s nr 9 na liście Top500 (11/2009) 8

Programowanie równoległe MPI Obliczenia wysokiej wydajności na superkomputerach wymagają użycia kodów numerycznych do przetwarzania równoległego wraz ze środowiskiem do przesyłania komunikatów pomiędzy procesami. kody zbudowane w standardowych językach programowania (Fortran77, C) lub językach wyższego rzędu (Fortran90, C++) komunikacja oparta o język programowania (np. HPF High Performance Fortran) lub o protokoły przesyłania komunikatów: MPI, PVM (Parallel Virtual Machine), MPI (Message Passing Interface) obecnie standardowy protokół komunikacyjny zainstalowany we wszystkich ośrodkach superkomputerowych: implementowany w postaci bibliotek standardowych języków programowania (rodziny Fortran, C, Java) przenośny (portable) wysoce skalowalny komunikacja bardzo szybka wykorzystywany w systemach obliczeniowych z pamięcią rozproszoną (MPI 1) lub z rozproszonym systemem pamięci dzielonej (distributed shared memory, MPI 2); projektowanie ma cechy architektur NUMA umożliwia komunikację punkt punkt i komunikację grupową posiada status public domain 9

Program PIC z MPI Program w MPI składa się z niezależnych procesów operujących na różnych danych (domenach; MIMD Mul0ple Instruc0on Mul0ple Data). Każdy proces wykonuje się we własnej przestrzeni adresowej (własna pamięć operacyjna). Podobnie jak w programie jednoprocesorowym każda domena posiada komórki cienie. Wartości składowych pól EM w tych komórkach są komunikowane pomiędzy odpowiednimi domenami (warunki zszycia i brzegowe). Cząstki wychodzące poza rdzeń obliczeniowy (3 i < mx 3) danej domeny są także przesyłane do odpowiedniej domeny. 2 3 0 1 i=1 2 3 4 mx 3 mx 2 mx 1 mx Pojedyncza domena z komórkami buforowymi Każda domena jest identyfikowana przez swój numer w grupie: 0, 1,, N p 1 10

Program PIC z MPI komunikacja cząstek Konieczność komunikowania się danej domeny ze wszystkimi sąsiadami: 2D 8 sąsiadów, 3D 26. Rdzeń obliczeniowy dla cząstek: 3 x < mx 2, 3 y < my 2. i=1 2 3 4 mx 3 mx 2 mx 1 mx A macierz zawierająca położenia i prędkości cząstek przesyłanych od procesu nadawcy A dane w przestrzeni adresowej odbiorcy Komunikacja dwupunktowa w MPI: proces nadawca wysyła komunikat: call MPI_Send(A,,id_proc_odbiorca, ) proces odbiorca odbiera komunikat: call MPI_Recv(A,,id_proc_nadawca, ) Podobny schemat komunikacji pól EM. 11

Program PIC z MPI warunki zszycia dla pól EM Warunki zszycia: wartości składowych pól EM w komórkach cieniach zadane przez wartości wewnątrz rdzeni obliczeniowych nakładających się domen (każda domena wylicza wartości 3 i mx 3, 3 j my 3 i potrzebuje wartości w warstwach i,j=2 i mx,y 2). E, B i=1 2 3 4 mx 3 mx 2 mx 1 mx i=1 2 3 4 mx 3 mx 2 mx 1 mx 12

Program PIC z MPI warunki zszycia dla pól EM Warunki zszycia: wartości składowych pól EM w komórkach cieniach zadane przez wartości wewnątrz rdzeni obliczeniowych nakładających się domen (każda domena wylicza wartości 3 i mx 3, 3 j my 3 i potrzebuje wartości w warstwach i,j=2 i mx,y 2). E, B i=1 2 3 4 mx 3 mx 2 mx 1 mx 13

Program PIC z MPI warunki zszycia dla pól EM Warunki zszycia: wartości składowych pól EM w komórkach cieniach zadane przez wartości wewnątrz rdzeni obliczeniowych nakładających się domen (każda domena wylicza wartości 3 i mx 3, 3 j my 3 i potrzebuje wartości w warstwach i,j=2 i mx,y 2). E, B i=1 2 3 4 mx 3 mx 2 mx 1 mx 14

Program PIC z MPI topologia komunikacji cząstki i pola EM są komunikowane ze wszystkimi sąsiadami: 2D 8 sąsiadów, 3D 26. topologia fizycznych połączeń pomiędzy procesorami może nie umożliwiać bezpośredniej komunikacji, co wprowadza opóźnienia w programie programowanie bezpośredniej komunikacji ze wszystkimi sąsiadami mało czytelne i złożone Topologia optymalna komunikacja tylko z najbliższymi sąsiadami w sekwencji: 1. prawo lewo 2. przód tył 3. góra dół 4 sąsiadów w 2D (6 w 3D) optymalne wykorzystanie pamięci operacyjnej mniej buforów pamięci dla przenoszonych danych (2 < > 8 (26); nowe bufory nadpisywane na stare) prosta topologia komunikacji przejrzyste programowanie zaniedbywalny overhead 15

Topologia komunikacji w MPI przykład dla cząstek w 2D a. Konfiguracja początkowa: b. Krok 1 komunikacja prawo lewo: 16 c. Krok 2 komunikacja góra dół: d. Konfiguracja końcowa: 16 16

Topologia komunikacji w MPI przykład dla pól w 2D Przesyłane wartości 2 i mx 2, 2 j my 2. a. Konfiguracja początkowa: b. Krok 1 komunikacja prawo lewo: c. Krok 2 komunikacja góra dół: d. Konfiguracja końcowa:

Kod numeryczny Par2cle In Cell z MPI cykl obliczeniowy Warunki początkowe Komunikacja pola E; warunki brzegowe Filtrowanie Diagnostyki Całkowanie pola B o ½ Δt Komunikacja pola B; warunki brzegowe Całkowanie równań ruchu cząstek Warunki brzegowe dla przyczynków do pola E od prądów Składowanie prądów; warunki brzegowe dla cząstek Całkowanie pola B o ½ Δt Otwarte warunki brzegowe dla pola B Komunikacja cząstek Otwarte warunki brzegowe dla pola E Całkowanie pola E o Δt Komunikacja pola B; warunki brzegowe 18

Zastosowanie symulacji PIC do modelowania szoków problem numerycznego promieniowania Czerenkowa Całkowanie równań Maxwella metodą skoczka na siatce Yee prowadzi do modyfikacji relacji dyspersji dla fali EM, która na siatce ma postać (2D; Wykład 3): ω 2 = c 2 k 2 [ sin(ω t/2) ] 2 = [ ] 2 [ sin(kx x/2) sin(ky y/2) + ] 2 c t x y numeryczna prędkość fazowa fali EM na siatce mniejsza od c dla zaburzeń krótkofalowych (dużych wektorów falowych) prędkość fazowa na siatce zależy od kierunku propagacji fali EM dla praktycznej wielkości kroku czasowego (Δt < Δt max = Δx/c 3) prędkości cząstek relatywistycznych są większe od prędkości fazowej krótkich fal: generacja niefizycznego promieniowania Czerenkowa na siatce! chociaż prom. Czerenkowa pojawia się przy krótkich falach, sprzęga się ono silnie nieliniowo ze skalami długofalowymi 19

Promieniowanie Czerenkowa w symulacjach szoków Problem promieniowania Czerenkowa pojawia się w symulacjach relatywistycznych fal uderzeniowych. warunki początkowe zadają populacje cząstek dryfujące z prędkością relatywistyczną względem siatki numerycznej (anizotropia) skala narastania niefizycznych pól może być wolna lecz symulacje PIC fal uderzeniowych w plazmie niezderzeniowej wymagają użycia dużych siatek numerycznych i wielokrotnego całkowania równań (kilkaset tysięcy milion Δt): niefizyczne pola zaburzają długoczasową ewolucję układu Metody eliminacji: schematy całkowania równań Maxwella wyższego rzędu filtrowanie zaburzeń krótkofalowych połączenie obu powyższych metod 20

Promieniowanie Czerenkowa dla dżetu na siatce numerycznej 2D, 8 ppc, m i /m e =1 (elektron pozytron), γ=10, ω pe =0.05, Dt=0.7, λ se =c/ω pe =10 Standardowy TRISTAN: metoda skoczka 2 go rzędu + filtr dwumianowy 21

TRISTAN MOD eliminacja promieniowania Czerenkowa Zastępując oryginalną metodę Yee schematem 4 go rzędu otrzymujemy lepszą zgodność z teoretyczną prędkością fali EM: efekty niefizyczne największe dla skośnych fal (w stosunku do krawędzi komórki) pola krótkofalowe dodatkowo filtrowane (Wykład 5) schemat 2 go rzędu schemat 4 go rzędu 22

Promieniowanie Czerenkowa dla dżetu na siatce numerycznej 2D, 8 ppc, m i /m e =1 (elektron pozytron), γ=10, ω pe =0.05, Dt=0.7, λ se =c/ω pe =10 TRISTAN MOD: metoda skoczka 4 go rzędu + filtrowanie 23