16. Taksonomia Flynn`a. Taksonomia systemów komputerowych
Transkrypt
16. Taksonomia Flynn`a. Taksonomia systemów komputerowych
16. Taksonomia Flynn'a. Taksonomia systemów komputerowych według Flynna jest klasyfikacją architektur komputerowych, zaproponowaną w latach sześćdziesiątych XX wieku przez Michaela Flynna, opierająca się na liczbie przetwarzanych strumieni danych i strumieni rozkazów. W taksonomii tej wyróŜnia się cztery grupy: SISD (Single Instruction, Single Data) - przetwarzany jest jeden strumień danych przez jeden wykonywany program - komputery skalarne (sekwencyjne). Zawierają jeden procesor i jeden blok pamięci operacyjnej. Komputery wg architektury von Neumann’a SIMD (Single Instruction, Multiple Data) - przetwarzane jest wiele strumieni danych przez jeden wykonywany program - tzw. komputery wektorowe. Tablice procesorów – wiele prostych procesorów wykonujących operacje skalarne. Komputery SIMD stosowane do obliczeń naukowo-technicznych, jednostki realizujące zadania SIMD obecne są takŜe w procesorze Pentium. MISD (Multiple Instruction, Single Data) - wiele równolegle wykonywanych programów przetwarza jednocześnie jeden wspólny strumień danych. Systolic Arrays (szeregi tętniące) – układy kolejek priorytetowych. Praktycznie nie stosowana, spotykana czasem w układach DSP (digital signal processing) MIMD (Multiple Instruction, Multiple Data) - równolegle wykonywanych jest wiele programów, z których kaŜdy przetwarza własne strumienie danych - przykładem mogą być komputery wieloprocesorowe, a takŜe klastry i gridy. NajwaŜniejszy typ architektury komputerów równoległych 17. Architektury pamięci. Dwie architektury pamięci: - Shared Memory (SM) – pamięć współdzielona - Distributed Memory (DM) – pamięć rozproszona SM (Shared Memory) – maszyny z pamięcią wspólną (współdzieloną, globalną); – wszystkie procesory mają tę samą przestrzeń adresową; – dostęp do danych zgodnie z regułami zasięgu danego języka programowania; – SMP – wariant: Symmetric Multi Processing. DM (Distributed Memory) – maszyny z pamięcią rozproszoną (lokalną); – maszyny z procesorami posiadającymi kaŜdy odrębną pamięć (przestrzeń adresową); – takŜe systemy połączone przez sieć (klastery); – Programista musi dokonać explicite podziału danych między procesory; – większa skalowalność. 18. Atrybuty maszyn SISD. Występują w nich pewne elementy rownoległości - pipelining . przetwarzanie potokowe, - SSE . rozszerzenia streaming SIMD extensions. Systemy wieloprocesorowe wykonujące niezaleŜne programy sekwencyjne. 19. Atrybuty maszyn (SM-, DM-) SIMD. SM-SIMD – maszyny wektorowe: – w sposób równoległy (po współrzędnych) wykonywane są ciągi tych samych operacji, – zrównoleglanie wykonywane automatycznie poprzez kompilator, – przykłady: CDC Cyber 205, Cray 1, Cray 2. DM-SIMD – tablice procesorów: – jeden procesor sterujący, – duŜa ilość prostych procesorów z pamięcią lokalną połączonych tylko z sąsiadami, – ta sama instrukcja wykonywana na lokalnych danych przez wszystkie procesory, – wymiana danych tylko z sąsiadami (routing), – specjalistyczne i historyczne (lata 80-te XX w.), – przykłady: Thinking Machines CM-2, MasPar MP-1. 20. Atrybuty i architektury pamięci maszyn SM-MIMD. SM-MIMD – pamięć wspólna – umiarkowana liczba działających niezaleŜnie procesorów, – globalna pamięć, jednorodnie adresowana, – teoretyczny model PRAM (Parallel RandomAccess Memory), – SMP (Symmetric Multi-Processing) – oznaczenie marketingowe, – przykłady: Cray T90, SGI Challenge, Sun 690. W praktyce dostęp do pamięci nie jest całkowicie jednolity: – przełącznica krzyŜowa (crossbar switch) – zapewnia ten sam czas dostępu, – wspólna magistrala danych (bus) – najtańsze rozwiązanie, – wielostopniowa przełącznica krzyŜowa (np. typu W). Crossbar switch: Bus: Cache: Omega switch: Koszty połączeń: Przełącznica krzyŜowa – O(p2) – czas odczytu średnio jak dla 1-go procesora • Magistrala – O(p) – pamięć cache buforująca często uŜywane dane, – czas dostępu moŜe rosnąć aŜ do p • Przełącznica Omega – O(p log2 p) – elementy łączą we z wy na wprost gdy i-ty bit adresu źródła jest równy i-temu bitowi adresu celu, – w kolejnych warstwach adresy przesunięte o jeden z zapętleniem, – jednocześnie moŜna przesłać p pakietów Cechy SM-MIMD: Zaletę stanowi względna łatwość realizacji oraz programowania: – jednolita przestrzeń adresowa, zbędne specjalne mechanizmy komunikacji, – konieczny mechanizm synchronizacji. • Słaba skalowalność liczby procesorów: – brak moŜliwości proporcjonalnego wzrostu przepustowości dostępu do pamięci.