0% au considerat acest document util (0 voturi)
5 vizualizări11 pagini

Tipuri de Calcul Paralel: Aplicații

Există trei tipuri principale de calcul paralel: paralelism la nivel de biți, paralelism la nivel de instrucțiuni și paralelism pe sarcini. Paralelismul la nivel de biți împarte operațiile în instrucțiuni mai mici pentru a fi executate pe mai multe procesoare simultan. Paralelismul la nivel de instrucțiuni execută mai multe instrucțiuni într-un singur ciclu de ceas. Paralelismul pe sarcini descompune probleme mari în subtask-uri independente care pot fi rezolvate simultan. Calculul paralel este folosit pentru aplicații precum baze de date, simulări, multimedia, știință/inginerie și altele. Permite rezolvarea problemelor mai rapid folosind resurse multiple, dar este mai complex de implementat decât calculul în serie.

Tradus de

ScribdTranslations
Drepturi de autor
© All Rights Reserved
Respectăm cu strictețe drepturile privind conținutul. Dacă suspectați că acesta este conținutul dumneavoastră, reclamați-l aici.
Formate disponibile
Descărcați ca PDF, TXT sau citiți online pe Scribd
0% au considerat acest document util (0 voturi)
5 vizualizări11 pagini

Tipuri de Calcul Paralel: Aplicații

Există trei tipuri principale de calcul paralel: paralelism la nivel de biți, paralelism la nivel de instrucțiuni și paralelism pe sarcini. Paralelismul la nivel de biți împarte operațiile în instrucțiuni mai mici pentru a fi executate pe mai multe procesoare simultan. Paralelismul la nivel de instrucțiuni execută mai multe instrucțiuni într-un singur ciclu de ceas. Paralelismul pe sarcini descompune probleme mari în subtask-uri independente care pot fi rezolvate simultan. Calculul paralel este folosit pentru aplicații precum baze de date, simulări, multimedia, știință/inginerie și altele. Permite rezolvarea problemelor mai rapid folosind resurse multiple, dar este mai complex de implementat decât calculul în serie.

Tradus de

ScribdTranslations
Drepturi de autor
© All Rights Reserved
Respectăm cu strictețe drepturile privind conținutul. Dacă suspectați că acesta este conținutul dumneavoastră, reclamați-l aici.
Formate disponibile
Descărcați ca PDF, TXT sau citiți online pe Scribd

Tipuri de calcul paralel

Din partea furnizorilor de calcul paralel open-source ș i proprietari, în general există


trei tipuri de calcul paralel disponibile, care sunt discutate mai jos:

1. Paralelism la nivel de bit: Forma de calcul paralel în care fiecare sarcină este
dependent de dimensiunea cuvântului procesorului. În ceea ce priveș te îndeplinirea unei sarcini pe dimensiuni mari

date, reduce numărul de instrucț iuni pe care procesorul trebuie să le execute. Există o
trebuie să împărț iț i operaț ia în serii de instrucț iuni. De exemplu, există un 8-
procesor de biț i, ș i vrei să efectuezi o operaț iune pe numere de 16 biț i. În primul rând, trebuie să

operaț i cei 8 biț i inferiori ș i apoi cei 8 biț i Superiori. Prin urmare, două
sunt necesare instrucț iuni pentru a executa operaț iunea. Operaț iunea poate fi efectuată
cu o instrucț iune de către un procesor pe 16 biț i.
2. Paralelism la nivel de instruc ț iune: Într-un singur ciclu de ceas al CPU-ului, procesorul decide
în paralelism la nivel de instrucț iune, câte instrucț iuni sunt implementate în acelaș i timp
timp. Pentru fiecare fază a ciclului de ceas, un procesor în paralelism la nivel de instrucț iune poate

au capacitatea de a aborda care este mai puț in decât o instrucț iune. Abordarea software-ului
în paralelismul la nivel de instrucț iuni, funcț ionează pe paralelismul static, unde computerul
decide care instrucț iuni să execute simultan.
3. Paralelele de sarcini: Paralelele de sarcini este forma de paralelele în care sarcinile sunt
decomponat în subtaskuri. Apoi, fiecare subtask este alocat pentru execuț ie. Ș i,
execuț ia subtask-urilor se realizează în mod concurent de către procesoare.

Aplicații ale calculului paralel


Există diverse aplicaț ii ale calculului paralel, care sunt următoarele:

oUna dintre principalele aplica ț ii ale computării paralele este bazele de date ș i datele
minerit.
oSimularea în timp real a sistemelor este o altă utilizare a calculului paralel.

oTehnologiile, cum ar fi videourile interconectate ș i multimedia.

oȘ tiinț ă ș i Inginerie.

oMediile de lucru colaborative.


oConceptul de calcul paralel este folosit de realitatea augmentată, avansată
grafica ș i realitatea virtuală.

Avantajele calculului paralel


Avantajele calculului paralel sunt discutate mai jos:

oÎn calculul paralel, se folosesc mai multe resurse pentru a finaliza sarcina care a dus la
reduceț i timpul ș i tăiaț i costurile posibile. De asemenea, se folosesc componente ieftine pentru

construieș te clustere paralele.


oComparativ cu calculul serial, calculul paralel poate rezolva probleme mai mari.
într-un timp scurt.
oPentru simularea, modelarea ș i în ț elegerea fenomenelor complexe din lumea reală,
computarea paralelă este mult mai adecvată în comparaț ie cu computarea în serie.
oCând resursele locale sunt finite, acestea pot oferi avantaje fa ț ă de cele non-locale.
resurse.
oExistă multiple probleme care sunt foarte mari ș i pot fi impracticabile sau imposibile
pentru a le rezolva pe un singur computer; conceptul de calcul paralel ajută la
elimină aceste tipuri de probleme.
oUnul dintre cele mai bune avantaje ale calculului paralel este că îț i permite să faci mai multe
lucruri într-un timp folosind resurse computaț ionale multiple.
oÎn plus, calculul paralel este potrivit pentru hardware, deoarece calculul în serie pierde
puterea de calcul potenț ială.

Dezavantajele calculului paralel


Există multe limitări ale calculului paralel, care sunt următoarele:

oSe abordează arhitectura paralelă care poate fi dificil de realizat.

oÎn cazul clusterelor, sunt necesare tehnologii de răcire mai bune în paralel
calculatoare.
oNecesită algoritmi gestiona ț i, care ar putea fi gestiona ț i în paralel
mecanism.
oArhitecturile multi-core consumă o putere ridicată.
oSistemul de calcul paralel necesită un cuplaj scăzut ș i o coeziune ridicată, care este
dificil de creat.
oCodul pentru un program bazat pe paralelism poate fi realizat de cei mai tehnici
programatori pricepuț i ș i experț i.

oDeș i calculul paralel te ajută să rezolvi problemele computaț ionale ș i


problemă exhaustivă cu ajutorul utilizării mai multor procesoare, uneori este
afectează conjuncț ia sistemului ș i unele dintre algoritmii noș tri de control ș i face
nu oferă rezultate bune din cauza opț iunii paralele.
oDatorită sincronizării, creării de fire, transferurilor de date ș i altele, costul suplimentar

uneori poate fi destul de mare; chiar poate depăș i câș tigurile din cauza
paralelizare.
oÎn plus, pentru îmbunătă ț irea performan ț ei, sistemul de calcul paralel are nevoie de

tweaking diferit de cod pentru arhitecturi ț intă diferite

Fundamentele arhitecturii calculatoarelor paralele


Arhitectura computerelor paralele este clasificată pe baza nivelului la care hardware-ul
susț ine paralelismul. Există diferite clase de arhitecturi de calcul paralel, care
sunt următoarele:

Computare multi-core
Un circuit integrat al unui procesor de calculator care conț ine două sau mai multe nuclee de procesare distincte
este cunoscut ca un procesor multi-core, care are capacitatea de a executa programe
instrucț iuni simultan. Corele pot implementa arhitecturi precum VLIW, superscalar,
multitasking, sau vectori ș i sunt integrate pe un singur cip integrat sau pe
multiple die-uri într-un singur pachet de chip. Arhitecturile multi-core sunt clasificate ca
heterogen care constă din nuclee care nu sunt identice, sau sunt clasificate ca
homogen care constă doar din nuclee identice.

Multiprocessing simetric
În procesarea simetrică, un singur sistem de operare gestionează multiprocesorul.
arhitectura computerelor având două sau mai multe procesoare omogene, independente care
treat all processors equally. Each processor can work on any task without worrying about
datele pentru această sarcină sunt disponibile în memorie ș i pot fi conectate cu ajutorul utilizării
reț ele de tip mesh pe cip. De asemenea, toate procesoarele conț in o memorie cache privată.

Calcul distribuit
Pe calculatoare conectate la reț ea diferite, componentele unui sistem distribuit sunt localizate.
Aceste computere conectate în reț ea îș i coordonează acț iunile cu ajutorul comunicării
prin HTTP, cozi de mesaje de tip RPC ș i conectori. Concuren ț a
componente ș i eș ecul independent al componentelor sunt caracteristicile distribuț iei
sisteme. De obicei, programarea distribuită este clasificată sub formă de peer-to-peer,
arhitecturi client-server, n-tier sau three-tier. Uneori, termenii calcul paralel
ș i calculul distribuit sunt utilizate inter-schimbabil, deoarece există multă suprapunere între
ambele.

Massively parallel computing


În acest caz, mai multe calculatoare sunt utilizate simultan pentru a executa un set de instrucț iuni în
paralel. Calculul pe re ț ea este o altă abordare în care numeroase computere distribuite
sistemul execută simultan ș i comunică cu ajutorul Internetului pentru a rezolva o
problemă specifică.

De ce calcul paralel?
Există diverse motive pentru care avem nevoie de calcul paralel, aș a cum se discută mai jos:

oComputarea paralelă se ocupă de probleme mai mari. În lumea reală, există multiple
lucruri care funcț ionează la un anumit moment, dar în numeroase locuri simultan, ceea ce este
dificil de gestionat. În acest caz, calculul paralel ajută la gestionarea acestui tip de
date extrem de mari.
oCalculul paralel este cheia pentru a face datele mai modelabile, simulare dinamică
ș i pentru atingerea acestuia. Prin urmare, calculul paralel este necesar pentru real
lume prea.
oCu ajutorul calculului serial, calculul paralel nu este ideal pentru a fi implementat
sisteme în timp real; de asemenea, oferă concurenț ă ș i economiseș te timp ș i bani.

oNumai conceptul de calcul paralel poate organiza seturi mari de date, complexe, ș i
gestionarea lor.
oAbordarea calculului paralel asigură utilizarea eficientă a resurselor.
ș i garantează utilizarea efectivă a hardware-ului, în timp ce doar unele păr ț i de
hardware-ul este folosit în calculul serial, iar unele părț i sunt lăsate inactive.

Viitorul Calculului Paralel


De la calculul serie la calculul paralel, grafurile computaț ionale s-au schimbat complet
schimbat. Gigantul tehnologic precum Intel a început deja să includă procesoare multicore cu
sisteme, ceea ce este un mare pas spre calculul paralel. Pentru un viitor mai bun, paralel
calculul va aduce o revolu ț ie în modul de lucru al computerului. Paralel
Calculul joacă un rol important în conectarea lumii între ea mai mult decât
înainte. Mai mult decât atât, abordarea calculului paralel devine mai necesară odată cu multi-
procesoare de computere, reț ele mai rapide ș i sisteme distribuite.

Diferența dintre calculul seriilor și calculul paralel


Calculul serial se referă la utilizarea unui singur procesor pentru a executa un program, cunoscut ș i sub numele de
ca calcul secvenț ial, în care programul este împărț it într-o secvenț ă de instrucț iuni,
ș i fiecare instrucț iune este procesată una câte una. În mod tradiț ional, software-ul oferă o variantă mai simplă
abordare aș a cum a fost programată secvenț ial, dar viteza procesorului este semnificativ
îș i limitează capacitatea de a executa fiecare serie de instrucț iuni. De asemenea, structurile de date secvenț iale sunt
folosit de maș inile uni-procesor în care structurile de date sunt concurente pentru paralel
medii de calcul.

Comparativ cu reperele în calculul paralel, în programarea secven ț ială,


măsurarea performanț ei este mult mai puț in importantă ș i complexă deoarece implică identificarea
gâtleaguri în sistem. Cu ajutorul benchmarking-ului ș i regresiei de performanț ă
cadre de testare, benchmark-uri pot fi realizate în calculul paralel. Aceste teste
cadrele includ o serie de metodologii de măsurare precum repetări multiple
ș i tratamentul statistic. Cu ajutorul mutării datelor prin ierarhia memoriei,
abilitatea de a evita acest blocaj este evidentă în principal în calculul paralel. Paralel
calculul vine cu un cost mai mare ș i poate fi mai complex. Totu ș i, paralel
calculul se ocupă de probleme mai mari ș i ajută la rezolvarea problemelor mai repede.
Clasificarea calculatoarelor Flynn
Arhitectură

M.J. Flynn a propus o clasificare pentru organizarea unui sistem de calculatoare prin
numărul de instrucț iuni ș i elemente de date care sunt manipulate simultan.

Secvenț a de instrucț iuni citită din memorie constituie un flux de instrucț iuni.

Operaț iile efectuate asupra datelor în procesor constituie un flux de date.


SISD
SISD reprezintă 'Flux Unic de Instrucț iune ș i Flux Unic de Date'. Reprezintă
organizarea unui singur calculator care conț ine o unitate de control, o unitate de procesare ș i o
unitate de memorie.

Instrucț iunile sunt executate secvenț ial, iar sistemul poate avea sau nu interne.
capacităț i de procesare paralelă.

Cele mai multe computere convenț ionale au arhitectură SISD, cum ar fi tradiț ionalul Von-Neumann
computere.

Procesarea paralelă, în acest caz, poate fi realizată prin intermediul unor unităț i funcț ionale multiple sau
prin procesarea pe conducte.

1. Unde, CU=Unitate de Control, PE=Element de Procesare, M=Memorie

Instruc ț iunile sunt decodificate de Unitatea de Control ș i apoi Unitatea de Control trimite...
instrucț iuni pentru unităț ile de procesare pentru execuț ie.

Fluxul de date curge între procesoare ș i memorie bidirecț ional.


Exemple:

Computere din generaț ia mai veche, minicomputere ș i staț ii de lucru

SIMD
SIMD înseamnă 'Instrucț iune Unică ș i Flux de Date Multiple'. Reprezintă un
organizaț ie care include multe unităț i de procesare sub supravegherea unui comun
unitate de control.

Toate procesoarele primesc aceeaș i instrucț iune de la unitatea de control, dar operează pe diferite
elemente de date.

Unitatea de memorie partajată trebuie să conț ină mai multe module pentru a putea comunica cu
toate procesoarele simultan.
SIMD este dedicat în principal maș inilor de procesare a array-urilor. Cu toate acestea, procesoarele vectoriale pot
de asemenea, să fie văzut ca parte a acestui grup.

MISD
MISD înseamnă 'Flux de multiple instrucț iuni ș i un singur flux de date'.

Structura MISD este de interes teoretic doar, deoarece niciun sistem practic nu a fost
construit folosind această organizaț ie.

În MISD, multiple unităț i de procesare operează pe un singur flux de date. Fiecare procesare
unitatea operează pe date în mod independent printr-un flux de instrucț iuni separat.
1. Unde, M=ModuleDeMemorie, CU=UnitateDeControl, P=Unită ț iDeProcesare

MIMD
MIMD înseamnă 'Multiple Instrucț iuni ș i Fluxuri Multiple de Date'.

În această organizaț ie, toate procesoarele dintr-un computer paralel pot executa instrucț iuni diferite
ș i operează asupra diverselor date în acelaș i timp.

În MIMD, fiecare procesor are un program separat ș i se generează un flux de instrucț iuni.
din fiecare program.
1. Unde, M=ModulDeMemorie, PE=ElementDeProcesare, ș i CU=UnitateDeControl

Examples:

Cray T90, Cray T3E, IBM-SP2

S-ar putea să vă placă și