1/36
Superkomputery i równoległość przetwarzania
Superkomputery i
równoległość
przetwarzania danych
1 2 3 4 5 2/36
1. Taksonomia Flynna
Taksonomia Flynna
?
1 2 3 4 5 3/36
1. Taksonomia Flynna
SISD
1 2 3 4 5 4/36
1. Taksonomia Flynna
SIMD
1 2 3 4 5 5/36
1. Taksonomia Flynna
MIMD ze wspólną pamięcią
1 2 3 4 5 6/36
1. Taksonomia Flynna
MIMD z pamięcią dzieloną
1 2 3 4 5 7/36
1. Taksonomia Flynna
Taksonomia Flynna graf EN
1 2 3 4 5 8/36
1. Taksonomia Flynna
Taksonomia Flynna graf PL
1 2 3 4 5 9/36
2. SMP = Symmetric MultiProcessors
System mikroprocesorowy silnie powiązany
(tightly coupled)
1 2 3 4 5 10/36
2. SMP = Symmetric MultiProcessors
SMP Symmetric Multiprocessors
1 2 3 4 5 11/36
2. SMP = Symmetric MultiProcessors
Pamięć wieloportowa
1 2 3 4 5 12/36
2. SMP = Symmetric MultiProcessors
Cechy systemu symetrycznego wieloprocesorowego SMP
" Szybkość
Jeśli część algorytmu może być wykonana równolegle
" Dostępność
Ponieważ wszystkie procesory mogą wykonać te same
funkcje, uszkodzenie któregoś z nich nie zatrzumuje systemu
" Skalowalność
Użytkownik może zwiększyć szybkość systemu dodając
kolejne procesory
Firmy mogą oferować całą gamę rozwiązań w oparciu o daną
architekturę systemu
1 2 3 4 5 13/36
2. SMP = Symmetric MultiProcessors
System operacyjny dla SMP
" Wiele jednocześnie i równolegle
wykonywanych procesów
" Problem scheduling
" Synchronizacja
" Zarządzanie pamięcią
" Niezawodność i tolerancja na błędy
1 2 3 4 5 14/36
2. SMP = Symmetric MultiProcessors
Cechy systemu SMP ze wspólną szyną
" Szybkość ograniczona przez czas cyklu szyny
" Każdy procesor powinien posiadać własny
cache
" Wspólny cache prowadzi do problemów ze
spójnością pamięci
1 2 3 4 5 15/36
2. SMP = Symmetric MultiProcessors
Duże komputery SMP przykład S/390
1 2 3 4 5 16/36
2. SMP = Symmetric MultiProcessors
Cache problemy w systemach wieloprocesorowych
?
Zapis jednoczesny (Write Through)
Zapis opózniony (Write Back)
1 2 3 4 5 17/36
2. SMP = Symmetric MultiProcessors
Cache możliwe rozwiązania
Rozwiązania programowe ciężar rozwiązywania spójności
przerzucony na kompilator. Najprostsze rozwiązanie to
zapobieganie kierowania wspólnych zmiennych do pamięci cache
(podręcznej). Bardziej efektywne rozwiązania koncentrują się na
stwierdzeniu okresów bezpieczeństwa wspólnych zmiennych.
Rozwiązania sprzętowe dynamiczne rozpoznawanie warunków
potencjalnej niespójności w czasie użytkowania systemu,
rozwiązywane przez sprzęt.
- Protokoły katalogowe : opiera się na centralnym systemie
przechowującym informacje gdzie rezydują wszystkie kopie
bloków danych
- Protokoły podglądania : odpowiedzialność za spójność
pamieci rozdzielona na wszystkie sterowniki tych pamięci.
Polegają na odpowiedniej kombinacji rozgłaszania i
podglądania .
1 2 3 4 5 18/36
2. SMP = Symmetric MultiProcessors
Protokuł MESI Modified/Exclusive/Shared/Invalid
1 2 3 4 5 19/36
2. SMP = Symmetric MultiProcessors
Protokuł MESI - tabela
1 2 3 4 5 20/36
3. Klastry
Klastry - koncepcja
1 2 3 4 5 21/36
3. Klastry
Klastry - podział
1 2 3 4 5 22/36
3. Klastry
Klastry tabela, podział
1 2 3 4 5 23/36
3. Klastry
Klastry zagadnienia systemu operacyjnego
" Zarządzanie uszkodzeniami
Failover
" Przerzucanie zadań z uszkodzonych komputerów
na inne, sprawne.
Failback
" Odzyskiwanie aplikacji i danych z uszkodzonych
systemów.
" Balansowanie obciążenia
Rozkładanie zadań
Skalowalność
1 2 3 4 5 24/36
3. Klastry
Klastry vs. SMP
" Obie metody zapewniają wykorzystanie wielu
procesorów jednocześnie.
" Obie metody są upowszechnione komercyjnie, ale SMP
przez dłuższy czas niż klastry.
" SMP jest prostsze w zarządzaniu i łatwiejsze do
przyjęcia w miejscu gdzie wcześniej używane były
klasyczne jednoprocesorowe systemy.
" SMP zużywa mniej mocy.
" Klastry zapewniają niesamowitą skalowalność
" Klastry nie wymagają często wymiany sprzętu
1 2 3 4 5 25/36
4. NUMA = Nonuniform Memory Access
NUMA - motywacja
W klastrach każdy węzeł ma własną
SMP ma ściśle określoną
pamięć, nie widzianą przez inne
liczbę maksymalną liczbę
węzły. Spoistość pamięci
procesorów (najczęściej 16
współdzielonej zarządzana jest tylko
do 64)
przez oprogramowanie.
Pozostawić przezroczysty system dużej współdzielonej
pamięci pozwalając na współdziałanie bardzo dużej
liczby systemów procesorowych posiadających swoją
lokalną organizację (lokalna pamięć, układy
wejścia/wyjścia itp.).
1 2 3 4 5 26/36
4. NUMA = Nonuniform Memory Access
NUMA - terminologia
UMA - Uniform memory access
Wszystkie procesory mają równy dostęp do całej pamięci
Czas dostępu do pamięci jest taki sam dla każdego
procesora i każdego adresu w pamięci
NUMA - Nonuniform memory access
Wszystkie procesory mają dostęp do całej pamięci
Czas dostępu do pamięci jest różny w zależności od
procesora i adresu pod który się odwołuje
NUMA-CC - Cache coherent NUMA
Każdy procesor ma pamięć podręczną, umożliwiającą
buforowanie komórek pamięci z dowolnego adresu.
System gwarantuje spójność pamięci podręcznej dla
każdego procesora.
1 2 3 4 5 27/36
4. NUMA = Nonuniform Memory Access
CC-NUMA - organizacja
1 2 3 4 5 28/36
4. NUMA = Nonuniform Memory Access
CC-NUMA - cechy
" Każdy procesor ma swoją własną pamięć
lokalną
" Procesor wraz z pamięcią podręczną,
pamięcią lokalną i zbiorem urządzeń
wejścia/wyjścia tworzy węzeł
" Każdy węzeł połączony jest z innymi
szybką infrastrukturą sieciową.
" Każdy procesor widzi całą pamięć
systemu w liniowej przestrzenii adresowej.
1 2 3 4 5 29/36
4. NUMA = Nonuniform Memory Access
CC-NUMA zarządzanie pamięcią cache
" Każdy węzeł zawiera informacje o umieszczeniu
wszystkich kopi danego bloku pamięci w
pamięciach podręcznych różnych procesorów.
" Wszelkie modyfikacje w pamięci podręcznej są
związane z koniecznością poinformowania
wszystkich węzłów posiadającą zmienną w
pamięci podręcznej o dezaktualizacji jej wartości.
1 2 3 4 5 30/36
4. NUMA = Nonuniform Memory Access
CC-NUMA zalety i wady
" CC-NUMA efektywne przy dużym stopniu
równoległości (większym niż SMP).
" Nie wymagają bardzo istotnych zmian w
oprogramowaniu.
" Efektywność może znacząco się obniżyć gdy
występuje dużo dalekich odwołań do pamięci.
Problem częściowo może być rozwiążany przez:
" Pamięć podręczną.
" Pamięć wirtualną.
" Przejście od SMP do CC-NUMA nie jest niestety
automatyczne.
Wymagana allokacja stron, allokacja procesów,
balansowanie obciążenia itp.
1 2 3 4 5 31/36
5. Procesory Wektorowe
Vector Processors - motywacja
1 2 3 4 5 32/36
5. Procesory Wektorowe
Vector Processors - rozwiązania
1 2 3 4 5 33/36
5. Procesory Wektorowe
Vector Processors
przetwarzanie
potokowe
1 2 3 4 5 34/36
5. Procesory Wektorowe
IBM 3090
35/36
Superkomputery i równoległość przetwarzania
Polecana literatura
1) W. Stallings, Organizacja i architektura systemu komputerowego, WNT 2004
Rozdział 18
108 stron
strony 710 - 818
36/36
Superkomputery i równoległość przetwarzania
dr inż. Mariusz Kapruziak
mkapruziak@wi.ps.pl
pok. 107, tel. 449 55 44
KONIEC
Wyszukiwarka
Podobne podstrony:
02 ParallelExecution csproj FileListAbsolute02 ASKca ParallelPortLoopbackCheckIt13 Zapytaj Stryja Gadułę Ask Uncle Blabby 07062008ASK 04 PawelKopec AdrianMakuchco ParallelA1000ParallelSamples csproj FileListAbsoluteco ParallelAmigaOutlandish I Only Ask of GodASK LAB5 Mnozenieask zagadnienia teoretyczneASK ALUParallelSamples csproj FileListAbsoluteASK egzaminASK 06 PostfixIce Cube Ask?out Mewięcej podobnych podstron