PPA P 07. Obsah Návrh paralelních algoritmů Projekty.

Slides:



Advertisements
Podobné prezentace
LOGISTICKÉ SYSTÉMY 14/15.
Advertisements

Přednáška č. 3 Normalizace dat, Datová a funkční analýza
Rekonstrukce povrchu objektů z řezů Obhajoba rigorózní práce 25. června 2003 Radek Sviták
Přednáška č. 5 Proces návrhu databáze
Operační systémy. OPERAČNÍ SYSTÉMY pomoc operátorovi, podpora vlastností reálného času, víceuživatelských a více úlohových systémů.
Plošná interpolace (aproximace)
Komunikace v DS Přednášky z distribuovaných systémů Ing. Jiří Ledvina, CSc.
Principy překladačů Architektury procesorů Jakub Yaghob.
Metody zpracování vybraných témat (projektů)
Optimalizace v simulačním modelování. Obecně o optimalizaci  Optimalizovat znamená maximalizovat nebo minimalizovat parametrech (např. počet obslužných.
Matematické metody v ekonomice a řízení II
LOGISTICKÉ SYSTÉMY 8/14.
Základy technologie line of sight (LoS) MIMO
Řešení dynamických problémů s podmínkami Pavel Surynek Univerzita Karlova v Praze Matematicko-fyzikální fakulta.
LOGISTICKÉ SYSTÉMY 4/14.
Proces řízení projektu
STANOVENÍ NEJISTOT PŘI VÝPOŠTU KONTAMINACE ZASAŽENÉHO ÚZEMÍ
Informační strategie. řešíte otázku kde získat konkurenční výhodu hledáte jistotu při realizaci projektů ICT Nejste si jisti ekonomickou efektivností.
2.2. Pravděpodobnost srážky
Databázové systémy Architektury DBS.
GEOTECHNICKÝ MONITORING Eva Hrubešová, katedra geotechniky a podzemního stavitelství FAST VŠB TU Ostrava.
Luděk Novák dubna 2006 Proč a jak řídit informační rizika ve veřejné správě.
Databázové systémy Přednáška č. 4 Proces návrhu databáze.
Modelování a simulace MAS_02
Informační systémy TPS,MIS, SIS.
Optimalizace versus simulace 9.přednáška. Obecně o optimalizaci  Maximalizovat nebo minimalizovat omezujících podmínkách.  Maximalizovat nebo minimalizovat.
Dokumentace informačního systému
Pojem účinného průřezu
Metody Finančního řízení firmy Tomáš Sobotka A09B0008PMAB.
Databázové modelování
Tvorba simulačních modelů. Než vznikne model 1.Existence problému 2.Podrobnosti o problému a o systému 3.Jiné možnosti řešení ? 4.Existence podobného.
P-těžké, np-těžké a np-úplné problémy
Zablokování (deadlock, smrtelné objetí, uváznutí)
Automatizovaná podpora výběru nástroje pro dobývání znalostí Jakub Štochl.
Distribuované algoritmy - přehled Přednášky z Distribuovaných systémů Ing. Jiří Ledvina, CSc.
ŘÍZENÍ DOPRAVY POMOCÍ SW AGENTŮ Richard Lipka, DSS
Časová analýza stochastických sítí - PERT
Alternativy k evolučním optimalizačním algoritmům Porovnání genetických algoritmů a některých tradičních stochastických optimalizačních přístupů David.
1.3. Obecné problémy fyzikální teorie jaderných reaktorů
NÁHODNÉ PROCESY V POPULACÍCH NÁHODNÉ PROCESY V POPULACÍCH Náhodný výběr gamet z genofondu:
Vyhledávání v multimediálních databázích Tomáš Skopal KSI MFF UK 4. Mapování a redukce dimenze 1. část – úvod + mapování vektorových sad.
1 Název celé následující kapitoly Řízení hospodárnosti režijních nákladů.
Distribuovaná simulace pomocí OOPN Ivan Schwarz. Motivace Význam distribuovaných aplikací Nutnost nástroje pro modelování, simulaci a prototypování distribuovaných.
NP-úplné problémy v grafech
Směrování -RIP. 2 Základy směrování  Předpoklady:  Mějme směrovač X  Směrovač nemůže znát topologii celé sítě  X potřebuje určit směrovač pro přístup.
Komunikace v DS Přednášky z distribuovaných systémů Ing. Jiří Ledvina, CSc.
Optimalizace versus simulace 8.přednáška. Obecně o optimalizaci  Maximalizovat nebo minimalizovat omezujících podmínkách.  Maximalizovat nebo minimalizovat.
Kombinovaná analýza srážek z meteorologických radarů a srážkoměrů a jejich užití v hydrologických modelech Milan Šálek
METODY STŘEDNĚDOBÉHO PROGNÓZOVÁNÍ SURO jaro 2010.
MASSIV Middleware pro tvorbu online her. Obsah prezentace Úvod Prostřeky poskytované Massivem Využití jádra Massivu v Demu Zhodnocení projektu Prezentace.
Přenos nejistoty Náhodná veličina y, která je funkcí náhodných proměnných xi: xi se řídí rozděleními pi(xi) → můžeme najít jejich střední hodnoty mi a.
SVAZEK NEDEDIKOVANÝCH PRACOVNÍCH STANIC NA BÁZI OS LINUX DANIEL LANGR DIPLOMOVÁ PRÁCE 2004.
Paralelizace algoritmu. Single Instruction, Single Data stream (SISD) „tupé“ procesory Single Instruction, Multiple Data streams (SIMD) maticové procesory.
B2B Systémová integrace Jiří Macháček. Osnova ► Úvod ► Terminologie ► Parametry – požadavky ► Způsoby integrace ► Web-Services ► Příklady.
Překladače Optimalizace © Milan Keršláger
Pracovní skupina Standardy Ing. Martin ZEMAN předseda pracovní skupiny NSeZ – neveřejná prezentace Emauzy,
ANALÝZA IS. Životní cyklus IS Specifikace problému, požadavků (studijní fáze) Analýza Návrh Implementace (realizace) Zavedení (instalace) a testování.
Uvedení autoři, není-li uvedeno jinak, jsou autory tohoto výukového materiálu a všech jeho částí. Tento projekt je spolufinancován ESF a státním rozpočtem.
Anotace Materiál je určen pro 2. ročník studijního oboru PROVOZ A EKONOMIKA DOPRAVY, předmětu LOGISTIKA A OBSLUŽNÉ SYSTÉMY. Inovuje výuku použitím multimediálních.
Kapitola 5: Úvod do analytických technologií Webu Vítězslav Šimon (SIM0047) Adaptivní webové systémy (AWS)
Personální práce v malé organizaci Milada Matyšková.
Úvod do databázových systémů
Monte Carlo Typy MC simulací
1. ročník oboru Mechanik opravář motorových vozidel
Vysoká škola technická a ekonomická v Českých Budějovicích Ústav podnikové strategie Analýza vhodnosti používaných komunikačních nástrojů ve vybraném podniku.
Systém elektronické podpory obchodování (SEPO)
Operační systémy 9. Spolupráce mezi procesy
iMUNIS Portálové řešení pro obce
Algoritmizace a datové struktury (14ASD)
Monitor Object 1.
Transkript prezentace:

PPA P 07

Obsah Návrh paralelních algoritmů Projekty

Návrh paralelních algoritmů Úkol – převést sekvenční algoritmus do paralelní formy – Může vyžadovat velmi rozdílný pohled na věc – Paralelní řešení „podstatně“ jiné než sekvenční (sorting networks) Fáze návrhu – Konceptuální Rozdělené na paralelní tasky (decomposition) Koordinace, analýza komunikace (coordination) – Implementační Aglomerace (vzhledem k použité platformě) Mapování tasku na jádro

Dekompozice Rozdělení problému na paralelní tasky – Aby bylo možno využít paralelního prostředí – Datová vs. funkční dekompozice Datová dekompozice – Aka doménová dekompozice, cílem je data paralelní řešení Rozdělit data na části, definovat tasky, které budou probíhat nad daty

Dekompozice (2) Funkční dekompozice – Rozděluje primárně problém na paralelní (nepřekrývající se) úkoly Potom odpovídajícím způsobem rozdělíme data – Současné zpracování nezávislých funkcí – Současné zpracování streamů dat – Problém: počet prováděných úkonů často neroste s rostoucí dimenzí problému Vhodnost dekompozice – Řádově více tasků než procesorů – Bez redundance – Přibližně stejná velikost tasků – Počet tasků roste s velikostí problému

Komunikace Definice komunikačních toků mezi paralelními tasky – Jednotlivé paralelní tasky (odpovídající particím) komunikují – Komunikace je nežádoucí overhead, snaha ji minimalizovat – Typy komunikace Lokální vs. globální Strukturovaná vs. nestrukturovaná Statická vs. dynamická Synchronní vs. asynchronní

Dekompozice (2) Vhodná komunikace – Tasky mají podobné komunikační patterny – Komunikují jen s malým počtem sousedů (=lokální k.) – Komunikační operace mohou probíhat paralelně – Komunikace a výpočty mohou probíhat paralelně Viz. např. CUDA

Aglomerace Kompozice particí (a tasků a komunikace) vzhledem ke zvolené platformě – Možnost kompozice (serializace) více konceptuálních tasků Granularita – Velké množství izolovaných tasků (fine grained) může být neefektivní (silná komunikace) Méně komunikace, větší zprávy Méně procesů – Povrch vs. objem Komunikace odpovídá „povrchu“ dané části problému Výpočet odpovídá „objemu“ Čím větší task, tím výhodnější poměr výpočet/komunikace Těžké navrhnout, problémy s ad-hoc (nestrukturovanou) komunikací – Replikace výpočtu Stejné výpočty na více jádrech, distribuce výsledku v okolí – Zamezení komunikaci Důsledná aglomerace operací, které nemohou probíhat paralelně

Aglomerace (2) Flexibilita – Důležitá pro přenositelnost řešení, škálovatelnost atd. – Dobré řešení je flexibilní, tzn. dokáže se přizpůsobit momentálním podmínkám – Zpravidla 1 task na 1 jádro Nebo více tasků v případě, že očekáváme překrytí výpočtů a komunikace – 1 čeká na data, druhý zaměstnává procesor – Vhodný počet tasků Vychází z možností dané platformy, analytického modelování a studií problému Ovlivňování za compile time a runtime Vhodná aglomerace – Vede k navýšení lokality – Bere v úvahu replikaci výpočtů – Agreguje tasky tak, aby měly podobné výpočetní a komunikační požadavky – Zpravidla méně rozsáhlejších tasků má větší efektivitu než více menších

Mapování Kde (na kterém procesoru) který task provést – Symetrické muptiprocesory – automatické plánování tasků – Distribuované systémy – složitější Sofistikované schedulery, zvažování během návrhu – Cíl: minimalizace doby výpočtu Prostředky: paralelní tasky na různá jádra (procesory) Často komunikující tasky na jedno jádro (procesor) – Prostředkem je vysoká konkurence a vysoká lokalita výpočtů zároveň Mapování sady tasků na sadu procesorů – Různé varianty – Problém kombinatorické optimalizace – NP úplný problém – Heuristiky a metaheuristiky

Mapování (2) Heuristiky pro zvláštní případy – Doménová dekompozice (DD), pevný počet podobných tasků, strukturovaná komunikace Minimalizivat IPC, aglomerované tasky na stejný proc. – DD, proměnná délka tasku, nestrukturovaná kom. Load balancing; overhead load balancingu musí být menší než zisk – DD, různý počet tasků, dynamické změny komunikace / práce na task Dynamický load balancing (zahrnuje změny mapování, ale i aglomerace ) Preference lokálních algoritmů – Funkční dekompozice Plánování (nezávislých) tasků - (Independent) task scheduling

Mapování (3) Load balancing – Vyvážení zátěže. Metody: Rekurzivní bisekce – Rozdělení do domén s obdobnou výpočetní zátěží – Bisekce podle polohy » Nepravidelné gridy s lokální komunikací, rozdělení podle polohy, vždy rozděluje podle větší dimenze » Jednoduché, ale ne příliš optimální (komunikace) – Grafová bisekce » Založená na grafech konektivity » Rozděluje podle vzdálenosti v grafu

Mapování (4) Load balancing – Vyvážení zátěže. Metody: Pravděpodobnostní metody – Přiřazuje tasky náhodně vybraným procesorům (uniformní distr. pravděpodobnosti) – Nenáročné, dobře funkční s rostoucí dimenzí – Cyklické mapování » Každý z p procesorů je alokován každý p-tý task Lokální algoritmy – Bez znalosti systému jako celku, jen info od sousedů – Výpočet je přidělen nejméně vytíženému sousedovi – Méně drahé než globální metody – Méně efektivní, pomalejší reakce na globální změny

Mapování (5) Plánování tasků – Vhodné pro případy, kdy máme mnoho málo závislých tasků – Manager/worker Workeři žádají o problémy k vyřešení (nebo generují nové) Manager může být úzké hrdlo – Decentralizovaná schémata Bez centrálního managera Distribuovaný sdílený task pool Problémy s detekcí ukončení, volných zdrojů

Mapování (5) Plánování tasků – Plánování nezávislých tasků T={T1, …, Tn}M={M1, …, Mm} Bez závislostí, preempce, NP úplný problém Snaha optimalizovat flowtime, makespan (výpočet celého meta-tasku) Předpoklad znalosti ETC Řada heuristik – min-min – max-min – LJFR-SJFR – Sufferage – WorkQueue

Mapování (6) Plánování tasků – Plánování nezávislých tasků Dobře fungují i metaheuristiky – Genetické algoritmy – Diferenciální evoluce Dobré mapování – Vybalancování (konfliktních) požadavků pro dobrou distribuci, malou komunikaci