Otázka č. 1: Ciele paralelného programovania paralelných výpočtov a vzťah k programovaniu systémov reálneho casu. Charakteristika a využitie paralelných architektúr. Vyváženosť a dodatočné náklady pri paralelných výpočtoch.
Paralelné programovanie – paralelné algoritmy pre rýchle výpočty a) pseudoparalelné (tlač na viacerých tlačiarňách naraz) b) paralelné (systém reálneho času, výmena pomocou správ) - paralené programy v systémo Vypocet realneho casu podla architekury- - pseudoparalelné (multiprogramovanie) – jednoprocesorova arch. s pridelovanim casu - paralelné(viacnasobne spracovanie) – viacprocesorova arch. so spolocnou pamatou (distribuovane spracovanie) – viacprocesorova arch. bez spolocnej pamate Ciele paralelných výpoctov - podstatne znizit cas vypctu oproti sekvencnemu - spracovat naraz velke mnozstvo dat Nevýhody PP – nie vždy je možné efektívne program paralelizovať, medzi efektívnymi par. problémami a druhom použitej paralelnej architektúry je silný vzťah, pred implementáciou paralelného problému je potrebné ho dekomponovať Cieľ dekompozície – zabezpečiť , aby paralelný systém mal dostatočné zdroje, treba naplánovať záťaž na jednotlivých procesoch, aby sa minimalizovali náklady na pamäť, komunikáciu ... Vyvažovanie – program je vyvážený dobre, ak práca je rozložená najefektívnejšie na jednotlivých procesoroch a každý proces trávi väčšinu času výpočtom, čas strávený na komunikáciu je minimálny ...
Otázka č. 2: Vlastnosti paralelných algoritmov a paralelných problémov, definícia inherentného, ohraniceného a neohraniceného paralelizmu, tried efektívne a optimálne paralelizovatelných problémov a téza paralelného výpočtu.
Paralelné problémy a algoritmy Inherentný paralelizmus – ak je problém inherentne paralelný možno ho riešiť paralelným algoritmom aj sekvenčným algoritmom. 2 algoritmy tej istej funkcie sa môžu líšiť v skupine inherentného paralelizmu Neohraničený paralelný algoritmus – je vyjadrený paralelným časom výpočtu bez ohľadu na zdroje počítačovej architektúry Ohraničený paralelný algoritmus - je vyjadrený paralelným časom výpočtu vo vzťahu na zdroje počítačovej architektúry Efektívne a optimálne paralelné algoritmy - nech k є Z a n je veľkosť problému, potom efektívny paralelný algoritmus leží v poly logaritmickom čase O(log k n) pri počte procesov nk . Ak problém nie je efektívne algoritm. – neoplatí sa ho paralelizovať Optimálny paralelný algoritmus – súčin paralelného času a počtu procesorov je lineárny - nezávisí na veľkosti problému pT = δ (n) Súhrn nákladov pri paralelnom výpočte - Náklady na komunikáciu a synchronizáciu - Ťažko paralel. časti kódu - Algoritmické náklady – alg. , ktorý je použitý – namiesto najrýchlejšieho sekvenčného algoritmu, môže obsahovať väčší počet operácií ako sekvenčný - Softvérové náklady spojené s indexovaním , volaním procedúr, spracovaním cyklov - Nevyváženosť záťaže ...