Documente Academic
Documente Profesional
Documente Cultură
1. Introducere
Calcul paralel = impartirea unei aplicatii in procese (taskuri) executate simultan pe un sistem cu mai multe
procesoare
Calcul distribuit = impartirea unei aplicatii in procese
(task-uri) executate in sisteme diferite (cu resurse diferite)
Impartirea poate fi
simpla procesele nu depind unele de altele: ordinea
de executie este oarecare
complicata procese dependente unele de altele:
ordinea de executie trebuie sa respecte dependentele
intre procese
foarte complicata se doreste si optimizarea timpului
de raspuns
Algoritmi paraleli si distribuiti
De ce folosim APD?
creterea performanelor
executia in paralel reduce timpul de raspuns
sigurana n funcionare
executia paralela a mai multor replici de program
P = Procesor;
M = Memorie
Arhitecturi Paralele
Taxonomia Flynn
SISD Single Instruction Stream, Single Data Stream
SIMD Single Instruction Stream, Multiple Data
Stream
MISD Multiple Instruction Stream, Single Data
Stream
MIMD Multiple Instruction Stream, Multiple Data
Stream
Importanta pentru implementarea algoritmilor paraleli si
distribuiti
SIMD
Implementat ca
sisteme cu memorie partajata - Shared Memory (PRAM)
multiprocesoare interconectate - Interconnected
Multiprocessors
Algoritmi paraleli si distribuiti
SIMD (2)
Shared memory (Parallel Random Access Machine PRAM)
EREW - Exclusive Read Exclusive Write
CREW - Concurrent Read Exclusive Write
ERCW - Exclusive Read Concurrent Write
CRCW - Concurrent Read Concurrent Write
Influenteaza performanta algoritmilor
Exemplu: citirea valorii unei variabila partajate
Un pas in CREW, CRCW
log N pasi in EREW, ERCW
X1
X2
X3
X4
v
Memoria comuna
v
P1
P2
P3
P4
Arbore
7
9
coloana j
Tablou
linia i
10
MISD
Fara relevanta practica
11
MIMD
Implementata ca Multi-calculatoare (memorie distribuita) sau Multiprocesoare (memorie partajata)
12
MIMD (2)
"Shared memory"
Uniform Memory Access (UMA)
Non-Uniform Memory Access (NUMA)
cache coherent Non-Uniform Memory Access (ccNUMA)
"Multi-computer"
Massively Parallel Processors (MPP)
Network Of Workstations (NOW)
13
procese
date locale
date partajate
Algoritmi paraleli si distribuiti
14
15