MIMD

De la Wikipedia, enciclopedia liberă.
Salt la navigare Salt la căutare
Arhitecturi conexe
( Taxonomia lui Flynn )
Instrucțiuni
Singur
Instrucțiuni
Multiplu
Dat
Singur
SISD MISD
Date
Multiplu
SIMD MIMD

Flux de instrucțiuni multiple Fluxul de date multiple ( MIMD ) este o arhitectură paralelă în care unități de procesare distincte efectuează simultan prelucrarea pe fluxuri de date diferite [1] . Exemple ale acestei arhitecturi sunt multiprocesorul de sistem, transputerul sau computerele conectate într-o rețea pentru procesare distribuită . În configurația multiprocesor, CPU - urile pot partaja datele alocate în memoria comună accesibilă prin magistrala de sistem.

Arhitectura MIMD

În modelul de calcul MIMD există mai multe procesoare care funcționează în paralel asincron. Fiecare procesor execută un program (sau instrucțiune) diferit pe date diferite. Într-o singură problemă (dar mare), fiecare procesor rezolvă o subproblemă. Comunicarea între diferiți procesoare are loc atât prin intermediul memoriei partajate (vorbim de procesoare „strâns cuplate”, strâns cuplate), cât și prin intermediul unei rețele de interconectare (mai multe calculatoare slab cuplate sau „slab cuplate”).

Arhitectură MIMD multiprocesor

În arhitectura MIMD multiprocesor, procesoarele partajează variabile (sau structuri de date) în memoria comună. Comunicarea are loc prin partajarea memoriei. Din acest motiv procesoarele au nevoie de unele mecanisme de control care să rezolve conflictul probabil de scriere în memorie de către doi sau mai mulți procesoare în același timp. În această arhitectură, calculul este foarte rapid, deoarece toți procesoarele accesează memoria partajată simultan, dar trebuie spus că această arhitectură este, de asemenea, foarte complexă, deoarece trebuie să existe numeroase circuite de decodare între procesoare, dar mai ales necesită o deci memorie foarte scumpă.

Arhitectură MIMD multi-computer

În arhitectura multi-computer MIMD, fiecare procesor are propria sa memorie. Diferitele procesoare comunică între ele printr-un schimb de mesaje numit „transmiterea mesajelor”. Comunicarea dintre diferiți procesoare este încredințată unei rețele de interconectare care permite fiecărui procesor să transmită date către orice alt procesor prezent în aceeași rețea. Procesoarele pot fi, de asemenea, la distanță fizică, așa cum se întâmplă în sistemele distribuite. Cu toate acestea, deoarece performanța scade în funcție de calitatea comunicării dintre procesoare, nu se recomandă crearea unei rețele care să acopere distanțe uriașe, sub pedeapsa vitezei de schimb de date. Cu toate acestea, este foarte complicat să proiectezi o rețea pentru multe procesoare. Rețeaua este concepută ca o mașină specială în care topologia sa intrinsecă este o trăsătură distinctivă a unui tip de computer multiplu. Complexitatea rețelei este evaluată în grade (numărul de conexiuni care pleacă de la fiecare nod) și în diametru (distanță minimă, exprimată în număr de noduri, între 2 noduri cele mai îndepărtate). Cu cât gradul este mai mare și diametrul este mai mic, respectiv implică un paralelism ridicat în comunicare și o viteză de comunicare mai mare.

Exemple de rețele multi-computer sunt stea, copac, cub, rețea, inel, plasă și rețeaua completă (toate tipurile de rețele fuzionate împreună).

Notă

  1. ^ Hennessy, John L. și Asanović, Krste., Arhitectura computerelor: o abordare cantitativă , ediția a 5-a, Morgan Kaufmann, 2012, ISBN 012383872X ,OCLC 755102367 .

Elemente conexe

Controlul autorității LCCN ( EN ) sh91003581
Informatică Portal IT : accesați intrările Wikipedia care se ocupă cu IT