infa wykłady INFORMA WYKŁAD NR 3 4

PODSTAWOWE POJĘCIA

Proces – jest jednostką aktywną kontrolowaną przez system operacyjny. Można powiedzieć, że proces jest aktualnie wykonywanym programem.

Wątek – (ang. Thread) jest to instancja procedury obliczeniowej, która posiada własne dane lokalne oraz dostęp do danych globalnych.

Różnica pomiędzy wątkiem a procesem: wątki działają wewnątrz pewnego procesu i mają dostęp do wspólnego segmentu danych. Każdy wątek posiada własne zmienne lokalne. Zmienne lokalne jednego wątku są dostępne z innych wątków tego samego procesu.

Obliczenia równoległe – określenie dotyczące programów i procesów wykonywanych jednocześnie. Wymagana jest większa ilość procesorów lub połączonych komputerów.

Mechanizmy potokowe – przetwarzanie równoległe. Pierwsza forma polegała na pobraniu następnego rozkazu w trakcie wykonywania poprzedniego. W tym celu nie jest wymagana większa ilość procesorów, a jedynie specjalna ich konstrukcja. Wydzielone jego części pracują jednocześnie i niezależnie od siebie wykonują składowe części większej operacji.

Komputery równoległe

Stosowane powszechnie komputery osobiste posiadają w swojej strukturze (architekturze) najczęściej jeden procesor o określonej mocy obliczeniowej.

Jednostką mocy obliczeniowej maszyn (komputerów) jest 1 Gflops tzn. 109 flops (z ang. Floating point operations per secondo flop/s), czyli wykonanie jednego miliarda operacji zmiennopozycyjnych w ciągu jednej sekundy.

Przeciętnie komputery klasy Pentium IV 2.0 GHz posiadają moc obliczeniową około 2,4 Gflops.

Komputery równoległe posiadają większą ilość procesorów i umożliwiają wykonywanie obliczeń równolegle – posiadają znacznie większe moce obliczeniowe.

Przykładowe zastosowanie komputera równoległego

Obliczenia z zastosowaniem maszyny jednoprocesorowej trwają niekiedy bardzo długo np.:

Pogodę można określić na podstawie układu równań różniczkowych cząstkowych Naviera-Stokesa opisujących przepływ gazów w atmosferze. Do numerycznego rozwiązania tego układu pozwalającego określić pogodę na najbliższe 4 dni na terenie Polski zakładając podział terenu Polski na kwadraty o boku 100 m konieczne jest wykonanie 0,85*1015 operacji zmiennopozycyjnych, co daje (dla komputera o mocy obliczeniowej 1Gflops’a) 0,85*106 sekund, czyli 235,1 godziny (ok. 10 dni).

Jak skrócić czas obliczeń pozostawiając zakładaną dokładność rozwiązania? Zastosować jeden ze znanych typów maszyn równoległych!!

Klasyfikacje maszyn równoległych

W pierwszej najbardziej ogólnej, klasyfikacji komputerów równoległych tzw. taksonomii Flynna, bierze się pod uwagę funkcje realizowane przez poszczególne procesory oraz dane, którymi dysponują.

Można wyróżnić cztery typy maszyn:

  1. SISD (Single Instruction stream Singla Data stream),

  2. SIMD (Single Instruction stream Multiple Data stream),

  3. MISD (Multiple Instruction stream Single Data stream),

  4. MIMD (Multiple Instruction stream Multiple Data stream),

Z czego zaznaczone kolorem czerwonym zostaną krótko scharakteryzowane.

SISD (ang. Single Instruction stream Single Data stream)

Komputery tej grupy wykonują rozkazy sekwencyjne (jeden za drugim), a o ich architekturze mówi się architektura von Neumanna. Zbudowane Zbudowane są one najczęściej z jednej jednostki sterującej, jednej przetwarzającej (arytmetyczno-logicznej) i jednego bloku pamięci operacyjnej.

Do tej kategorii zaliczane są również komputery, które podczas wykonywania rozkazów wykorzystują mechanizmy przetwarzania potokowego.

SR – strumienie rozkazów, SD – strumienie danych, JS – jednostka sterująca, JP – jednostka przetwarzająca, MP – moduł pamięci

SIMD (ang. Single instruction stream Multiple Data stream)

W komputerach o takiej organizacji wiele jednostek przetwarzających jest przyporządkowywanych jednej jednostce sterującej. W praktyce oznacza to, że te same operacje wykonywane są jednocześnie na różnych danych.

SR – strumienie rozkazów MP – moduł pamięci

MIMD

Jest to najważniejsza kategoria maszyn równoległych. W jej organizacji wyróżnić można wiele strumieni rozkazów i danych angażujących wiele jednostek sterujących i jednostek przetwarzających.

W maszynach takich poszczególne procesory wykonują operacje na róznych danych, stanowią różne części tego samego zadania obliczeniowego.

Rodzaje komputerów MIMD
Maszyna
z pamięci wspólną SM-MIMD (ang. Shared memory) zbudowana jest z niezależnie działającej grupy procesorów. Każdy z nich ma dostęp do wspólnego obszaru pamięci (tzw. pamięci globalnej).

Drugą grupę komputerów MIMD stanowią maszyny z pamięcią lokalną (rozproszoną): DM-MIMD (ang. Distributed memory). Należą one do najbardziej dynamicznie rozwijającej się i najbardziej popularnej grupy maszyn równoległych. Zbudowane są z grupy działających niezależnie od siebie procesorów, które posiadają własną pamięć lokalną.

Miary efektywności

Oznaczmy:

n- wielkość zadania,
p- liczba procesorów,
T(n,p) – czas wykonania programu realizującego algorytm dla zadania o wielkości n na maszynie równoległej z p procesorami.


$$S\left( n,p \right) = \ \frac{T(n,1)}{T(n,p)} \leq p$$

Względny współczynnik przyspieszenia, nazywany niekiedy efektywnością lub wydajnością:


$$e\left( n,\ p \right) = \ \frac{S(n,\ p)}{p}\text{\ \ \ \ \ \ \ \ \ }e_{\%}\left( n,p \right) = \ \frac{S(n,p)}{p} \times 100\%$$

Do klasy DM-MIMD (z pamięcią lokalną) zaliczane są także sieci komputerów wykonujące wspólne obliczenia. Tego typu maszyny równoległe nazywane są wirtualną maszyną równoległą lub klastrem.

Obliczenia rozproszone i klastry
Pojęcie klaster narodziło się w połowie lat osiemdziesiątych podczas łączenia mikrokomputerów średniej mocy VAX w większe systemy.

Ważną zaletą klastrów jest możliwość ich rozbudowy poprzez dodanie kolejnej maszyny lub wykorzystanie posiadanego przez firmę sprzętu, który zazwyczaj nie jest używany poza godzinami pracy. Klasyry tworzone są zazwyczaj z komputerów pracujących pod kontrolą systemów operacyjnych Linux. Istnieją także rozwiązania pracujące pod kontrolą systemów typu WINDOWS. Najbardziej znane mechanizmy do tworzenia klastrów to: PVM (ang. Parallel Virtual Machine) i MPI (ang. Message Passing Interface).

WYMAGANIA
Zapewnienie szybkiej, wprowadzającej możliwie małe opóźnienia, komunikacji między węzłami klastra!!! Większość znanych rozwiązań bazuje na sieciach Fast Ethernet, Gigabit Ethernet, łączach ATM, FireWire (IEEE 1394) czy nawet USB.


Wyszukiwarka

Podobne podstrony:
infa wykłady INFORMATYKA WYKŁAD
infa wykłady Programowanie w języku C# Informatyka wykład
Technologia informacyjna Wykład nr 1
wyklad nr 1 Informacje wstępne, krzywa mozliwości produkcyjnych
infa wykłady Najpopularniejsze typy nośników informacji stosowane w systemach komputerowych INFA
Wykład nr 4
Wykład nr 7
WYKŁAD NR 3 KB2 PŁYTY WIELOKIERUNKOWO ZBROJONE
Wykład nr 5 podstawy decyzji producenta
Hydrologia Wyklad nr 11
wykład+nr+8+ +Obróbki+powierzchniowe
Ochrona Środowiska wykład Nr 1 z dnia 27 streszczenie, ochrona środowiska(1)
Wykład nr 1, materiał♫y z pedagogiki
Biochemia wykład nr 3 kopia
STANDARDY Wyklad nr 2
Wykład nr 7
Prawo karne wykład nr 3 z dn ) 10 2011
MSG wykład nr 6

więcej podobnych podstron