Next: Fork
Up: Maszyna typu PRAM
Previous: Maszyna typu PRAM
  Spis rzeczy
Opis maszyny typu PRAM
Podstawowym modelem służącym do badań algorytmów równoległych jest maszyna typu
PRAM1 ([4]). Jej głównymi składnikami są globalna pamięć oraz zbiór procesorów.
Do rozważań teoretycznych przyjmuje się, że zbiór procesorów oraz zasoby pamięci
są potencjalnie nieskończone, jednak w skończonych obliczeniach wykorzystuje
się jedynie skończony ich podzbiór. Oto podstawowe cechy maszyny tego typu:
- Wszystkie procesory są taktowane jednym zegarem systemowym. PRAM może być maszyną
typu SIMD2
lub MIMD3
, przy czym standardowe algorytmy są projektowane na pierwszy z wymienionych
typów. Oznacza to, że w danej chwili wszystkie procesory wykonują dokładnie
taki sam program operując na różnych danych lub pozostają w stanie oczekiwania.
W implementacjach sprzętowych to założenie zazwyczaj jest realizowane programowo,
ponieważ nie można zapewnić synchronizacji lepszej niż na poziomie pojedynczego
rozkazu procesora.
- Każdy procesor jest identyfikowany przez swój numer, zwany także indeksem. Jest
on unikatowy w skali danej maszyny. Jest on także dostępny dla kodu programu
(najczęściej jako stała) i na jego podstawie zazwyczaj określa się zakres prac
przewidzianych dla danego procesora.
- Każdy procesor posiada własną pamięć podręczną o dostępie swobodnym.
- Wszystkie procesory mogą komunikować się bezpośrednio z globalną pamięcią dzieloną
dostępną dla wszystkich jednostek. W zależności od potrzeb zapewnia się przy
tym możliwość jednoczesnego dostępu do tej samej komórki pamięci (przy zapisie
wprowadza się strategie określające, które dane zostaną w takiej sytuacji zapisane)
lub np. zabrania jednoczesnego odczytu i/lub zapisu przez kilka procesorów (maszyny
typu EREW4
, CREW5
, CRCW6
).
Schemat budowy takiej maszyny przedstawia rysunek 1.
Rysunek 1:
Schemat budowy maszyny typu PRAM
|
Taki model ma następujące zalety:
- Istnieje wiele technik i metod pozwalających rozwiązywać problemy pochodzące
z różnych klas algorytmów.
- Nie ma potrzeby zajmowania się problemami synchronizacji i komunikacji. Pozwala
to na skoncentrowanie się na istotnych elementach algorytmu.
- W prosty sposób można ocenić efektywność danego algorytmu.
Next: Fork
Up: Maszyna typu PRAM
Previous: Maszyna typu PRAM
  Spis rzeczy
Łukasz Maśko
2000-04-17