Descargar la presentación
La descarga está en progreso. Por favor, espere
1
2. Konputagailu Paraleloak
Arkitektura Paraleloak IF - EHU 2. Konputagailu Paraleloak (oinarrizko kontzeptuak) - Sarrera - SIMD konputagailuak - MIMD konputagailuak - Arazo nagusiak - Kalkulu-abiadura
2
Sarrera Paralelismoa: “eragiketa” bat baino gehiago “batera, aldi berean” egitea. • datuen tamaina: bit • aginduen exekuzioa (ILP): segmentazioa, supereskalarrak, VLIW... • datuetan vs programetan
3
- bektore-prozesadoreak
Sarrera Paralelismoa SIMD: Single-Instruction-Multiple-Data - bektore-prozesadoreak - prozesatze-matrizeak (array processors) - GPU MIMD: Multiple-Instruction-Multiple-Data Prozesu/hari asko, erantzuna ahalik eta azkarren emateko (high performance). - multiprozesua, hutsegiteekiko tolerantzia, P kopia (lan-emaria edo throughput-a)
4
SIMD prozesatze-matrizea
Prozesadore sinple asko, memoria gutxi, sarrera/ irteera eragiketetarako aukera. Komunikazio-sare berezia. komunikazio-sarea prozesatze-matrizea P+M+S/I
5
SIMD prozesatze-matrizea
Kontrol-prozesadoreak sinkronoki exekutatuko duten agindua bidaltzen die prozesadore guztiei (BC). Prozesadore bakoitzak, agindua exekutatzen du edo ez du ezer egiten. komunikazio-sarea prozesatze-matrizea P+M+S/I front-end Kontrol-proz.
6
SIMD prozesatze-matrizea
Adibidea (X, Y eta Z bektoreak prozesadoreen artean banatuta daude) for (i=0; i<1000; i++) if (Y[i] != 0) Z[i] = X[i] / Y[i]; else Z[i] = X[i]; 1. pausoa: egiaztatu denak Y[i] != 0 (true / false) 2. pausoa: baldin (true) egin Z[i] = X[i] / Y[i] (besteok, ezer ez) 3. pausoa: baldin (false) egin Z[i] = X[i] (besteok, ezer ez) Arkitektura mota hau egokia da aplikazio jakin batzuetarako; esaterako, irudiak (seinaleak) prozesatzeko.
7
GPU GP-GPU • erabiltzea kalkulurako, azeleragailu gisa, irudiak (matrizeak) prozesatzeko hardware berezia. • prozesu-unitate (sinple) asko eta egituratuta. • kalkulu independente asko, datu-egitura oso handien gainean. • CUDA arkitektura: memoria hierarkia berezia. ADI memoria-transferentziak (MN-GPU) kalkulu baino denbora gehiago har dezakete. ((la
8
MIMD: Multiple-Instruction-Multiple-Data
MIMD konputagailuak MIMD: Multiple-Instruction-Multiple-Data P prozesu/hari batera exekutatzen dira. Oinarrizko bi eredu: - memoria partekatua - memoria banatua
9
Memoria partekatua (shared memory)
MIMD konputagailuak Memoria partekatua (shared memory) P0 P1 Pp–1 prozesadoreak + CM komunikazio-sarea S/I M0 Mm–1 memoria nagusia
10
Memoria partekatua (shared memory)
MIMD konputagailuak Memoria partekatua (shared memory) - Helbide-espazio bakarra. - Prozesuen arteko komunikazioa aldagai partekatuen bidez. - Komunikazio-sarea: busa (edo urrats anitzeko sare bat). - Izenak: multiprozesadorea, SMP, UMA. - Eskuarki, prozesadore “gutxi”. P0 P1 Pp–1 M0 Mm–1 S/I
11
Memoria banatua (distributed memory)
MIMD konputagailuak Memoria banatua (distributed memory) Pp-1 Mp-1 S/I P0 M0 S/I Konputagailua: Pr + CM + MN + S/I K komunikazio-sarea
12
Memoria banatua (distributed memory)
MIMD konputagailuak Memoria banatua (distributed memory) - Helbide-espazio bat prozesadore bakoitzeko. - Prozesuen arteko komunikazioa mezu-ematearen bidez. - Komunikazio-sare orokorrak: hiperkuboa, maila, torua... - Izenak: multikonputagailua, MPP. - Eskuarki, prozesadore “asko”. Pp-1 Mp-1 S/I P0 M0 K
13
Beste aukera bat: memoria partekatua baina fisikoki banatua.
MIMD konputagailuak Beste aukera bat: memoria partekatua baina fisikoki banatua. - Helbide-espazioa bakarra da, baina erabilera ez da homogeneoa: memoria-hierarkia bat osatu da. - Prozesuen arteko komunikazioa aldagai partekatuen bidez egiten da (logikoki), eta mezu-ematearen bidez gauzatzen da. - Izenak: DSM, NUMA (MPP). Pp-1 P0 S/I S/I Mp-1 K M0 K
14
Izenak: MIMD konputagailuak
- SMP: memoria partekatuko multiprozesadorea, eskuarki prozesadore kopuru txikia, bus batez komunikatuta. - MPP: prozesadore kopuru handiko sistema paraleloa, memoria partekatukoa zein banatukoa. Oro har, makinarik azkarrenak, berariazko komunikazioko zein kalkuluko hardwarea eta softwarea dituzten sistemak. Baina garestiak. Egitura hierarkikoak antola daitezke (adib., nodoak SMP sistemak dira).
15
Izenak: MIMD konputagailuak
- Cluster: helburu orokorreko hardware zein soft-warearekin egindako sistema paraleloa. Kostua/abiadura erlazioa oso ona da. PC ethernet Sinpleena: PC / ethernet (Beowulf). Commodity / Custom Gero eta gehiago, sistema paralelo orokorra.
16
Izenak: MIMD konputagailuak
- Konstelazioa (constellation): cluster bat, non nodo kopurua nodo bakoitzeko prozesadore kopurua baino txikiagoa baita.
17
Laburpena agindu-jarioak SMP datu-jarioak MPP/NUMA Clusters
MN P C memoria partekatua SMP busa 1 N SIMD MIMD SISD agindu-jarioak datu-jarioak MPP/NUMA Clusters memoria banatua P C M sare orokorra Prozesatze-matrizeak Bektore-konputagailuak
18
Laburpena Helbide-espazioa Memoria SMP - DSM, NUMA MPP
partekatua pribatua zentralizatua (busa) banatua (sarea) Memoria SMP - DSM, NUMA MPP
19
Sistema paraleloetan gainditu behar diren arazo batzuk:
Arazoak Sistema paraleloetan gainditu behar diren arazo batzuk: - Nola kudeatzen da sistema osoa? - Nola banatzen da algoritmo bat P prozesutan? Kode guztia paraleloan exekuta al daiteke? - Lan-banaketa orekatua da, edo, adibidez, exekuzio-karga “% 80 - % 20” banatu da? (load balancing)
20
Sistema paraleloetan gainditu behar diren arazo batzuk:
Arazoak Sistema paraleloetan gainditu behar diren arazo batzuk: - Non daude datuak? Nola mantentzen da datuen koherentzia? - Prozesu guztiak independenteak dira? Sinkronizatu egin behar dira? - Prozesadoretik prozesadorera bidali beharko dira datuak? Nola?
21
Ordaindu behar diren gainkargak
Arazoak Ordaindu behar diren gainkargak 1. Komunikazioa Tp = Texe + Tkom prozesadore kopurua Tp Texe Tkom
22
Ordaindu behar diren gainkargak
Arazoak Ordaindu behar diren gainkargak 2. Lan-banaketaren desoreka Adibidez: 6 prozesu independente, antzeko exekuzio-denborak → Ts = 6T ▪ 3 prozesadoreren artean ( ) Tp = 2T = Ts/3 ▪ 4 prozesadoreren artean ( ) Tp = 2T = Ts/3 !
23
Ordaindu behar diren gainkargak
Arazoak Ordaindu behar diren gainkargak 3. Cachearen erabilera Cache-blokeetako datuak (ber)erabili behar dira (ingurutasuna). Adibidez, baldin A1 eta A2 ondoz ondoko memoria-posiziotan badaude, prozesadore berean prozesatzea mereziko du, cacheko asmatze-tasa handitzeko.
24
Aplikazio motak Arazoak - ale xeheko paralelismoa
ataza asko, txikiak komunikazioa: maiz, datu gutxi - ale larriko paralelismoa ataza gutxi, handiak komunikazioa: noizbehinka, datu asko
25
Azelerazio-faktorea / Eraginkortasuna
Helburua: 1 programa bera azkarrago exekutatzea. 2 programa handiagoak denbora berdinean exekutatzea. Azelerazio-faktorea / Eraginkortasuna af = Ts / Tp (onena: P-rekiko linealki haztea) erag = af / P (onena: P-rekiko independentea) Kasurik onena: Tp = Ts / P → af = P eta erag = 1
26
1 Oro har, zati bat paraleloan eta beste bat seriean:
Amdahl 1 Oro har, zati bat paraleloan eta beste bat seriean: Tsp = f Tp + (1-f) Ts Beraz, hau da benetako azelerazio-faktorea (Amdahl-en legea): af = Ts / Tsp = Ts / [f Ts/P + (1-f) Ts] af = P / [f + (1-f) P] → 1 / (1-f) !
27
Amdahl 1 Amdahl-en legea af = P / (f + (1-f) P) → 1 / (1-f)
28
Gustafson 2 Maiz, paralelismoa ez da azkarrago exekutatzeko erabiltzen, baizik eta tamaina handiagoko atazak exekutatu ahal izateko. (1-f) Ts f Ts Ts f Ts (1-f) Ts P prozesadore Tp’ = Ts paraleloan f Ts P (1-f) Ts tamaina handiagoa (xP) Ts’ = ((1-f) + f P) Ts seriean af = Ts’ / Tp’ af = (1-f) + f P
29
Gustafson 2 Gustafson-en legea af = (1-f) + f P
30
any questions? 2 Gustafson-en legea K. Par. | Gustafson
Arkitektura Paraleloak IF - EHU 2 Gustafson-en legea af = (1-f) + f P any questions?
Presentaciones similares
© 2025 SlidePlayer.es Inc.
All rights reserved.