Obsah

N-AP 17

Zadání

Masivně paralelní systémy, paralelní algoritmy, „jemný‟ paralelismus.

Masivně paralelní systémy (MPP)

MPP je systém složený z několika relativně samostatných subsystémů. Jednotlivé procesorové uzly jsou vybaveny vlastní operační pamětí i vlastními vstupně-výstupními kanály a zařízeními. To klade mnohem nižší nároky na datovou propustnost jednotlivých kanálů pro komunikaci mezi jednotlivými procesorovými uzly. U MMP je pak možné zvyšovat počet procesorů až do řádů stovek nebo tisíců a využívají se pro extrémně náročné aplikace. Nevýhodou tohoto systému je vysoká náročnost při vytváření aplikací, které by důkladně využívaly možnosti architektury MMP.

Paralelní algoritmy

Některé úlohy je prakticky nemožné paralelizovat - např. obsluha I/O, výpočet kryptografické hašovací funkce, nebo výpočet Fibonacciho posloupnosti ( F(n) = F(n-1) + F(n-2) - jednotlivé kroky výpočtu jsou závislé na dvou předchozích hodnotách).

Metodiky návrhu paralelních algoritmů

Task/channel model

Fáze návrhu

Techniky dekompozice

Charakteristika prvotních tasků

Graf závislosti tasků

Graf interakcí tasků

Analýza paralelních algoritmů

Amdhalův zákon

Buď 0 \leq f \leq 1 část výpočtů, které musí být prováděny čistě sekvenčně. Maximální urychlení S(n,p) dosažitelné při použití p procesorů je:

S(n,p) \leq \frac{1}{f + (1-f)/p}

(http://www.youtube.com/watch?v=WdRiZEwBhsM)

Gustavsonův-Barsiho zákon

S(n,p) \leq p + (1 - p)s

Příklad: Výpočet běžící na 64 procesorech trvá 220 sekund.
Měření ukazuje, že 5% z celého času výpočtu zabere čistě
sekvenční část algoritmu. Jakého urychlení bylo dosaženo?

S(n,p) = 64 + (1 - 64) . 0,05 = 64 - 3,15 = 60,85

„Jemný‟ paralelismus

Používají se u systémů se sdílenou pamětí. Vlákna běží v rámci jedné úlohy, tj. sdílí její kontext. Jednotlivé úlohy sú na seba previazané, a výsledok jedného podproblému závisí od výsledkov iných podproblémov. (problémy vhodné pre superpočítače, počítačový klaster alebo velmi tesne viazané PC klastre s rýchlou sieťou).

Rozdíl mezi jemným a hrubým paralelismem spočívá v poměru doby komunikace mezi uzly a vlastního výpočtu - jemný paralelismus znamená, že ke komunikaci dochází relativně často.

Instrukční paralelismus

Datový paralelismus

Použitá literatura a weby

http://geraldine.fjfi.cvut.cz/~oberhuber/data/hpc/paa/prezentace/10-paralelni-alg.pdf http://bluegoof.sweb.cz/pages/zajimavosti/architektura_pc/kapitola9.htm http://www.cs.utexas.edu/users/mckinley/352/lectures/23.pdf http://whatis.techtarget.com/definition/MPP-massively-parallel-processing