ASK 12 Parallel


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 FileListAbsolute
02 ASK
ca ParallelPortLoopbackCheckIt
13 Zapytaj Stryja Gadułę Ask Uncle Blabby 07062008
ASK 04 PawelKopec AdrianMakuch
co ParallelA1000
ParallelSamples csproj FileListAbsolute
co ParallelAmiga
Outlandish I Only Ask of God
ASK LAB5 Mnozenie
ask zagadnienia teoretyczne
ASK ALU
ParallelSamples csproj FileListAbsolute
ASK egzamin
ASK 06 Postfix
Ice Cube Ask?out Me

więcej podobnych podstron