Algoritmi paraleli

Proiect
7/10 (1 vot)
Domeniu: Automatică
Conține 1 fișier: pdf
Pagini : 12 în total
Cuvinte : 2504
Mărime: 63.22KB (arhivat)
Publicat de: Emil Ichim
Puncte necesare: 6

Cuprins

  1. Algoritmi paraleli pentru sortare . 4
  2. Bubble Sort . 5
  3. Algoritmul serial de sortare ( Bubble sort ). 6
  4. Implementarea algoritmului de sortare bubble. 6
  5. Principii de paralelizare . 7
  6. Algoritmul secvential de sortare par-impar . 7
  7. Algoritmi paraleli. 8
  8. Tehnici de programare paralelă. Paralelismul datelor . 8
  9. Partitionarea datelor . 9
  10. Algoritmi relaxati. 9
  11. Iterarea sincronă. 10
  12. Prelucrare în conductă . 10
  13. Conflictele de memorie . 11
  14. Codul secvential excesiv . 11
  15. Timpul de creare a proceselor . 11
  16. Întârzierile datorate comunicării . 12
  17. Încărcarea neregulată. 12
  18. Sortarea paralelă. 12

Extras din proiect

Algoritmi paraleli pentru sortare

Algoritmii paraleli sunt opusi algoritmilor seriali deoarece secventele de cod pot

fi executate pe mai multe procesoare si apoi sunt „reunite” pentru a obtine rezultatul

corect. Unii algoritmi sunt usor de împărtit în segmente care să permită procesarea

paralelă. De exemplu, determinarea numerelor prime de la 1 la 10 000, ar putea fi

realizată mult mai repede prin împărtirea intervalului în subintervale de o anumită

lungime (lungimea intervalelor nu trebuie sa fie neapărat egală, unele procesoare pot avea

o putere de calcul mai mare si atunci ele pot procesa un interval mai mare de numere), iar

apoi realizând o listă cu rezultate obtinute de la fiecare procesor în parte. Cei mai multi

algoritmi folositi pentru a calcula numărul PI nu pot fi împărti pentru a fi executati pe mai

multe procesoare. De obicei, se asteaptă rezultatul de la pasul anterior pentru a trece la

următorul pas. Algoritmii paraleli sunt buni deoarece este mult mai avantajos să realizezi

calcule care necesită foarte multe resurse pe mai multe procesoare, decât pe un singur

calculator. Din puncte de vedere tehnologic, este mai greu sa construiesti un computer

care să aiba o putere foarte mare de calcul.

În cele din urmă am prezentat enuntarea problemei de sortare cu următoarele:

· Sortarea este o problemă tipică de procesare date si reprezintă algoritmul prin care

putem rearanja k elemente într-o anumită ordine.

· Există diversi algoritmi de sortare printre care se numară bubble sort, quick sort,

shell sort, selectia minimului, insertiei, interclase, par-impar.

· Fiecare algoritm de sortare se bazează pe o anumită metodă: partitionare(quick

sort), comparare(bubble sort).

· Cu toate ca există numerosi algoritmi de sortare, nu se poate afirma ca unul dintre

ei ar fi cel mai bun.

· Fiecare algoritm are nevoie de un anumit spatiu de memorie, fiecare realizează

sortarea într-un anumit timp.

· Pentru anumiti algoritmi de sortare(bubble sort, insertie, etc) numărul de operatii

necesare depinde de pătratul numărului de elemente ce urmează a fi sortate.

· Pentru algoritmi de sortare mai eficienti(shell sort, quick sort) complexitatea este

determinată astfel:

T ≈ n*log(2)*n

· O accelerare a sortării datelor se poate realiza prin utilizarea mai multor

procesoare.

· Pentru a usura schema de distributie a datelor procesoarele sunt numeroatate

consecutiv.

Bubble Sort

Acest algoritm de sortare se bazează pe compararea si interschimbarea datelor în

cazul în care valorile acestora nu corespund conditiilor de sortare

Operatii de baza comparare-interschimbare

If( A[i] > A[j] );

{

Temp = A[i];

A[i] = A[j];

A[j] = temp;

}

Aplicarea succesivă a acestei operatii permite sortarea datelor. Algoritmul Bubble

sort, pentru a realiza sortarea, compară si interschimbă elementele vecine dintr-o

secventă. După fiecare insertie, o parte din elementele vectorului sunt deja ordonate.

Pentru secventa ( a1, a2, …, an ) algoritmul execută n-1 operatii de comparareinterschimbare:

( a1, a2 ) ,( a2, a3 ) , …, ( a(n-1), an ); ca rezultat după prima insertie, cel

mai mare element este mutat la finalul secventei.

La următoarea insertie ultimul element din secventă este omis, si procedura descrisă

mai sus este aplicată celorlalte n-1 elemente din secventa ( a1, a2, …, a(n-1) ).

Preview document

Algoritmi paraleli - Pagina 1
Algoritmi paraleli - Pagina 2
Algoritmi paraleli - Pagina 3
Algoritmi paraleli - Pagina 4
Algoritmi paraleli - Pagina 5
Algoritmi paraleli - Pagina 6
Algoritmi paraleli - Pagina 7
Algoritmi paraleli - Pagina 8
Algoritmi paraleli - Pagina 9
Algoritmi paraleli - Pagina 10
Algoritmi paraleli - Pagina 11
Algoritmi paraleli - Pagina 12

Conținut arhivă zip

  • Algoritmi Paraleli de Sortare.pdf

Alții au mai descărcat și

Calcul paralel - metodă de gradient conjugat

Introducere Metodele de optimizare sunt în general metode de descreştere, ce determină minimul unei funcţii U de n variabile reale care se numeşte...

Modelarea Matlab-Simulink a Unei Sere

Cunoasterea duratei de timp de la semanat pâna la rasaritul plantelor mai are însemnatate si pentru obtinerea unor productii cat mai timpurii. Daca...

Circuite logice secvențiale

In multe aplicatii este nevoie de un element care sa prezinte 2 stari diferite, cu posibilitatea de a trece dintr-o stare in cealalta, fara sau in...

Proiectare conceptuală

Cerintele sistemului operational Odata ce a fost definita nevoia si abordarea tehnica, e necesar sa le tranlatam intr-un “scenariu...

Te-ar putea interesa și

Studiul experimental al dirijării pachetelor utilizând algoritmul multicast - protejarea informațiilor pe baza algoritmului RC5

CAP.I. REŢELE DE CALCULATOARE – GENERALITĂŢI 1.1. CONCEPŢIA DE REŢEA O reţea de calculatoare reprezintă un mod de conectare a unor calculatoare...

Calcul Paralel

1.Introducere Conceptul clasic a lui Von Neumann despre computerul serial a fost incorporat in primele masini moderne de calcul. Viteza de calcul...

Aplicații - calculul paralel în domeniul analizei datelor în timp real-financial, stock-market

A. Algoritm paralel pentru un sistem de decizie in timp real in domeniul pietei financiare 1. Prezentare Modelele de calcul paralel a sistemelor...

Algoritmi Paraleli

Prezentarea proiectului Problema filozofilor la masă a fost expusă prima dată de Dijkstra, în anul 1965 şi reprezintă o problemă clasică de...

Mecanisme de Sincronizare a Proceselor la Calculatoare Multiprocesor

Introducere Procesarea paralela a aparut datorita cerintelor crescande de performanta , a mentinerii unor costuri reduse a procesarii si nevoii de...

Cercetarea și Modelarea Sistemelor de Calcul Multiprocesuale

Introducere În ultimii ani, nevoia de a partaja informaţiile şi resursele între diferite calculatoare a condus la ideea conectării...

Arhitecturi de Calcul Paralel

Sisteme abstracte de calcul parallel • Un sistem abstract de calcul paralel (SACP) este un ansamblu de module de calcul (unitati de procesare a...

Algoritmi Paraleli

Un algoritm rapid necesita folosirea variabilelor partajate cu scriere multipla; daca fiecare variabila ar fi scrisa numai de un singur procesor,...

Ai nevoie de altceva?