IB109 Návrh a implementace paralelních systémů. Analytický model paralelních programů. RNDr. Jiří Barnat, Ph.D.

Rozměr: px
Začít zobrazení ze stránky:

Download "IB109 Návrh a implementace paralelních systémů. Analytický model paralelních programů. RNDr. Jiří Barnat, Ph.D."

Transkript

1 IB109 Návrh a implementace paralelních systémů Analytický model paralelních programů RNDr. Jiří Barnat, Ph.D.

2 Analytický model paralelních programů B109 Návrh a implementace paralelních systémů: Analytický model paralelních programů str. 2/?? Vyhodnocování sekvenčních algoritmů Časová a prostorová složitost Funkce velikosti vstupu Vyhodnocování paralelních algoritmů Paralelní systém = algoritmus + platforma Složitost Přínos paralelismu Přenositelnost... V této kapitole Jak posuzovat výkon paralelních algoritmů a systémů

3 Sekce IB109 Návrh a implementace paralelních systémů: Analytický model paralelních programů str. 3/?? Režie (overhead) paralelních programů

4 Režie (overhead) paralelních programů B109 Návrh a implementace paralelních systémů: Analytický model paralelních programů str. 4/?? Fakta Důvody S použiti n-násobných HW zdrojů, lze očekávat n-násobné zrychlení výpočtu. V praxi velmi vzácné, a pokud nastává tak důvody jsou většinou v neoptimálním navržení sekvenčního algoritmu. Způsobeno režií paralelního programu. Režie interakce, prostoje, složitost paralelního algoritmu Nerovnoměrné zvyšování HW zdrojů Zvýšení počtu procesorů nepomůže, pokud aplikace není závislá na čistém výpočetním výkonu

5 Režie (overhead) paralelních programů B109 Návrh a implementace paralelních systémů: Analytický model paralelních programů str. 5/?? Komunikace Cena samotné komunikace Příprava dat k odeslání, zpracování přijatých dat Prostoje (Lelkování, Idling) Nerovnoměrné generování zátěže na jednotlivé procesy Čekání na zdroje či data Synchronizace Větší výpočetní složitost paralelního algoritmu Sekvenční algoritmus nejde paralelizovat (například DFS) Typicky existuje vícero paralelních algoritmů, nutné charakterizovat čím platí za paralelismus

6 Sekce B109 Návrh a implementace paralelních systémů: Analytický model paralelních programů str. 6/?? Metriky výkonosti

7 Čas výpočtu (Execution time) B109 Návrh a implementace paralelních systémů: Analytický model paralelních programů str. 7/?? Otázky Jak měřit výkon/kvalitu paralelního algoritmu? Podle čeho určit nejlepší/nejvhodnější algoritmus pro danou platformu? Čas výpočtu sekvenční algoritmus Doba, která uplyne od spuštění výpočtu do jeho ukončení. T S Čas výpočtu paralelní algoritmus Doba, která uplyne od spuštění výpočtu do doby, kdy skončí poslední z paralelních výpočtů. Zahrnuje, distribuci vstupních i sběr výstupních dat. T P

8 Celková režie paralelismu (Total overhead) B109 Návrh a implementace paralelních systémů: Analytický model paralelních programů str. 8/?? Celková režie: Označujeme T O Zahrnuje veškeré elementy způsobující režii paralelního programu. Celkové množství času stráveného paralelním výpočtem bez času výpočtu sekvenčního algoritmu. Paralelní a sekvenční algoritmy mohou být zcela odlišné. Sekvenčních algoritmů může existovat víc. T S čas výpočtu nejlepšího sekvenčního algoritmu. Funkce celkové režie Jaký je čas výpočtu jednotlivých procesů? Doba od skončení výpočtu jednoho procesu do skončení celého paralelního výpočtu se považuje za režii (idling). T O = pt P T S

9 Zrychlení (Speed-up) B109 Návrh a implementace paralelních systémů: Analytický model paralelních programů str. 9/?? Základní přínos paralelizace Problémy jdou vždy řešit sekvenčním algoritmem. Paralelizací lze dosáhnout pouze zrychlení výpočtu. Ostatní výhody jsou diskutabilní a těžko měřitelné. Základní míra účinnosti samotné paralelizace Poměr časů potřebných k vyřešení úlohy na jedné procesní jednotce a p procesních jednotkách. Uvažuje se vždy čas nejlepšího sekvenční algoritmu. V praxi se často (a nesprávně) používá čas potřebný k vyřešení úlohy paralelním algoritmem spuštěném na jedné procesní jednotce. S = T S T P, kde T S odpovídá nejlepšímu sekv. algoritmu

10 Zrychlení B109 Návrh a implementace paralelních systémů: Analytický model paralelních programů str. 10/?? Příklad sčítání n čísel s použitím n procesních jednotek. Sekvenčně je potřeba Θ(n) operací, čas Θ(n) Paralelně je potřeba Θ(n) operací, ale v čase Θ(log n) Zrychlení S = Θ( n log n ) Teoretická hranice zrychlení S použitím p procesních jednotek je maximální zrychlení p Super-lineární zrychlení Jev, kdy zrychlení je větší jak p

11 Amdahlův zákon B109 Návrh a implementace paralelních systémů: Analytický model paralelních programů str. 11/?? Otázka Jaké největší možné zrychlení systému, pokud se paralelizací urychlí pouze část výpočtu? Amdahlův zákon S max = 1 (1 P)+ P S P P podíl systému, který je urychlen paralelizací S P zrychlení dosažené paralelizací nad daným podílem Příklad Paralelizací lze urychlit 4-násobně 30% kódu, tj. P = 0.3 a S P = 4. Maximální celkové zrychlení S max je S max = 1 (1 0.3) = = = 1.29

12 Super-lineární zrychlení Falešné super-lineární zrychlení Uvažme datovou distribuci na 2 procesní jednotky, a operaci kvadratickou ve velikosti dat. Zrychlení S = n2 ( n 2 )2 = 4 při použití 2 procesních jednotek. Problém neuvažován optimální sekvenční algoritmus. Skutečné super-lineární zrychlení Větší agregovaná velikost cache pamětí. Při snížení množství dat na jeden procesní uzel se účinnost cache pamětí zvýší. Výpočet je na 1 p datech víc jak p-krát rychlejší. Super-lineární zrychlení v závislosti na instanci problému Průzkumová dekompozice úlohy při hledání řešení. Paralelní verze může vykonat menší množství práce. V konkrétní instanci lze paralelní prohledávání simulovat i sekvenčním algoritmem, obecně ale nelze. IB109 Návrh a implementace paralelních systémů: Analytický model paralelních programů str. 12/??

13 Efektivita B109 Návrh a implementace paralelních systémů: Analytický model paralelních programů str. 13/?? Fakta Pouze ideální paralelní systém s p procesními jednotkami může dosahovat zrychlení p. Efektivita Příklad Jednotky typicky nemohou věnovat 100% výkonu úloze. Podíl času, po který jednotka vykonává užitečný kód. Lze definovat jako podíl zrychlení S vůči počtu jednotek p. E = S p. Zrychlení je v praxi < p, efektivita v rozmezí (0, 1. Jaká je efektivita sčítání n čísel na n procesorech? S = Θ( n log n ) E = Θ( S n ) = Θ( 1 log n )

14 Cena B109 Návrh a implementace paralelních systémů: Analytický model paralelních programů str. 14/?? Cena řešení problému na daném paralelním systému Součin počtu procesních jednotek a doby paralelního výpočtu: C = p T P Označována také jako množství práce, které paralelní systém vykoná, nebo jako pt p produkt Alternativně lze použít pro výpočet účinnosti (E = T S C ) Cenově optimální paralelní systém Cena sekvenčního výpočtu odpovídá nejlepšímu T S Paralelní systém je cenově optimální, pokud cena řešení roste asymptoticky stejně rychle jako cena sekvenčního výpočtu Cenově optimální systém musí mít efektivitu rovnou Θ(1) Příklad Sčítání n čísel na n procesorech C = Θ(nlog n), není cenově optimální

15 Cena příklad B109 Návrh a implementace paralelních systémů: Analytický model paralelních programů str. 15/?? Uvažme n procesorový systém, který třídí seznam n čísel v čase (log n) 2 Nejlepší sekvenční algoritmus má T S = nlog n S = n log n, E = 1 log n C = n(log n) 2 Není cenově optimální, ale pouze o faktor log n Uvažme, že v praxi p << n (p je mnohem menší než n) T P = n(log n) 2 /p a tedy S = p log n Konkrétně: n = 2 10, log n = 10 a p = 32 S = 3.2 Konkrétně: n = 2 20, log n = 20 a p = 32 S = 1.6 Závěr: cenová optimalita je nutná

16 Sekce B109 Návrh a implementace paralelních systémů: Analytický model paralelních programů str. 16/?? Vliv granularity na cenovou optimalitu

17 Vliv granularity na cenovou optimalitu B109 Návrh a implementace paralelních systémů: Analytický model paralelních programů str. 17/?? Tvrzení Volbou granularity lze ovlivnit funkci cenové optimality. Pozorování V praxi p << n, přesto navrhujeme algoritmy tak, aby granularita byla až na úrovni jednotlivých položek vstupu, tj. předpokládáme p = n. Deškálování (scale-down) Uměle snižujeme granularitu (vytváříme hrubší úlohy). Snižujeme overhead spojený s komunikací. Může zachovávat cenovou optimalitu.

18 Vliv granularity na cenovou optimalitu B109 Návrh a implementace paralelních systémů: Analytický model paralelních programů str. 18/?? Příklad 1) Sčítání n čísel na p procesorech (n = 16, p = 4) Mapování (i mod p), tj. (n/p) čísel na 1 procesor. Simulace prvních log p kroků stojí (n/p)log p operací, tj. proběhne v čase Θ((n/p)log p). Následně simulace původního algoritmu probíhá lokálně v paměti jednoho procesoru, tj. v čase Θ(n/p). Celkový T P je Θ((n/p)log p) Cena C = Θ(nlog p), tj. není cenově optimální Původní T P bylo Θ(log n), změna o faktor n p ( log p log n )

19 Vliv granularity na cenovou optimalitu B109 Návrh a implementace paralelních systémů: Analytický model paralelních programů str. 19/?? Příklad 2) Sčítání n čísel na p procesorech (n = 16, p = 4) Nechť n a p jsou mocniny dvojky (n a p jsou soudělné) Mapování (i mod p) Každá jednotka nejprve sečte data lokálně v čase Θ(n/p) Problém redukován na sčítání p čísel na p procesorech Celkový T P je Θ(n/p + log p) Cena C = Θ(n + plog p), Cenově optimální, pokud n > p log p (cena C = Θ(n))

20 Sekce B109 Návrh a implementace paralelních systémů: Analytický model paralelních programů str. 20/?? Škálovatelnost paralelních programů

21 Škálovatelnost paralelních programů Fakta Programy jsou testovány na malých vstupních datech na systémech s malým počtem procesních jednotek. Použití deškálovaní zkresluje měření výkonu aplikace. Algoritmus, který vykazuje nejlepší výkon na testovaných datech, se může ukázat být tím nejhorším algoritmem, při použití na skutečných datech. Odhad výkonu aplikace nad reálnými vstupními daty a větším počtu procesních jednotek je komplikovaný. Škálovatelnost Zachování výkonu a efektivity při zvyšování počtu procesních jednotek a zvětšování objemu vstupních dat. Závěr Je třeba uvážit analytické techniky pro vyhodnocování výkonu a škálování. B109 Návrh a implementace paralelních systémů: Analytický model paralelních programů str. 21/??

22 Charakteristiky škálování Efektivita B109 Návrh a implementace paralelních systémů: Analytický model paralelních programů str. 22/?? Efektivita paralelních programů: Celková režie (T O ) E = S p = T S pt P = T O T S Přítomnost sekvenční části kódu je nevyhnutelná. Pro její vykonání je třeba čas t serial. Po tuto dobu jsou ostatní procesní jednotky nevyužité. T O > (p 1)t serial T O roste minimálně lineárně vzhledem k p, často však i asymptoticky více. Úloha konstantní velikosti (T S fixní) Se zvyšujícím se p, efektivita nevyhnutelně klesá. Nevyhnutelný úděl všech paralelních programů.

23 Charakteristiky škálování Příklad B109 Návrh a implementace paralelních systémů: Analytický model paralelních programů str. 23/?? Problém Sečíst n čísel s využitím p procesních jednotek Uvažme cenově optimální verzi algoritmu. T p = ( n p + log p). Lokální operace a komunikace stojí 2 jednotky času. Charakteristiky T P = n p + 2log p n S = n p +2log p 1 E = 1+ 2plog p n

24 Charakteristiky škálování Škálovatelný systém B109 Návrh a implementace paralelních systémů: Analytický model paralelních programů str. 24/?? Při zachování T S Rostoucí počet procesních jednotek snižuje efektivitu. Při zachování počtu procesních jednotek Rostoucí T S (velikost vstupních dat) má tendenci zvyšovat efektivitu. Škálovatelné systémy Efektivitu lze zachovat při souběžném zvyšování T S a p. Poměr, ve kterém se T S a p musí zvyšovat, aby se zachovala efektivita. Čím menší poměr T S /p tím lepší škálovatelnost. Škálovatelnost je schopnost paralelního systému zvýšit zrychlení s počtem procesních jednotek.

25 Izoefektivita jako metrika škálování B109 Návrh a implementace paralelních systémů: Analytický model paralelních programů str. 25/?? Vztahy T P = T S +T O (T S,p) S = T S T P = E = Pozorování p pt S T S +T O (T S,p) T S T S +T O (T S,p) = 1 1+T O (T S,p)/T S Efektivitu lze zachovat, pouze pokud T O (T S, p)/t S je konstantní Úpravou vztahu pro efektivitu: T S = E 1 E T O(T S, p) K = E/(1 E) konstanta odvozená od míry efektivity Funkce izoefektivity T S = KT O (W, p)

26 Izoefektivita jako metrika škálování B109 Návrh a implementace paralelních systémů: Analytický model paralelních programů str. 26/?? Funkce izoefektivity T S = KT O (W, p) Pozorování Při konstantní efektivitě, lze T S vyjádřit jako funkci p Vyjadřuje vztah, jak se musí zvýšit T S při zvýšení p Nižší funkce říká, že systém je snáze škálovatelný Isoefektivitu nelze měřit u systémů, které neškálují

27 Izoefektivita jako metrika škálování příklad B109 Návrh a implementace paralelních systémů: Analytický model paralelních programů str. 27/?? Příklad Součet n čísel na p procesorech E = 1 1+(2p log p)/n = 1 1+T O (W,p)/T S T O = 2p log p Funkce izoefektivity: T S = K2p log p Funkce izoefektivity: Θ(p log p) Při zvýšení procesních jednotek z p na p se pro zachování efektivity musí zvětšit velikost problému o faktor (p log p )/(p log p).

28 Izoefektivita jako metrika škálování příklad B109 Návrh a implementace paralelních systémů: Analytický model paralelních programů str. 28/?? Komunikační režie V případě součtu n čísel na p procesních jednotkách je komunikační režie závislá pouze na p. Obecně ale může být vztah T O složitější, a isofunkce těžko vyjádřitelná čistě na p Konstantní efektivita vyžaduje, aby T 0 /T S bylo shora omezené, a tedy T O nemůže obsahovat T S s mocninou větší jak 1. Hypotetický příklad T O = p 3/2 + p 3/4 T 3/4 S Funkce isoefektivity pro jednotlivé členy v součtu: Kp 3/2, K 4 p 3 Θ(p 3 )

29 Cenová optimalita a izoefektivita B109 Návrh a implementace paralelních systémů: Analytický model paralelních programů str. 29/?? Optimální cena Pro cenově optimální systémy požadujeme pt P = Θ(T S ). Po dosazení ze základních izo vztahů dostáváme: T S + T O (T S, p) = Θ(T S ) Cenová optimalita může být zachována pouze pokud: režie je nejvýše lineární vůči složitosti sekvenčního algoritmu, tj. funkce T O (T S, p) O(T S ) složitost sekvenčního algoritmu je minimálně tak velká jako režie, tj. funkce T S Ω(T O (T S, p))

30 Spodní odhad na izoefektivitu B109 Návrh a implementace paralelních systémů: Analytický model paralelních programů str. 30/?? Izoefektivita Čím nižší/menší funkce, tím lepší škálovatelnost. Snaha o minimální hodnotu izofunkce. Sublineární izoefektivita Pro problém tvořený N jednotkami práce je optimální cena dosažitelná pouze pro maximálně N procesních jednotek. Přidáváním dalších jednotek vyústí v idling některých jednotek a snižování efektivity. Aby se efektivita nesnižovala musí množství práce růst minimálně lineárně vzhledem k p. Funkce izoefektivity nemůže být sublineární.

31 Stupeň souběžnosti a funkce izoefektivity B109 Návrh a implementace paralelních systémů: Analytický model paralelních programů str. 31/?? Stupeň souběžnosti Míra počtu operací, které může úloha provádět paralelně. Označme D(T S ) funkci vyjadřující počet paralelně proveditelných operací v závislosti na velikosti vstupu. Izoefektivita a stupeň souběžnosti Stupeň souběžnosti limituje efektivitu T S = K T S D(T S ) T O(T S, p) Funkce izoefektivity může být optimální Θ(p) pouze pokud stupeň souběžnosti je Θ(T S ) Příklad Gaussova eliminace T S = Θ(n 3 ), D(T S ) = Θ(n 2 ) Izoefektivita: Θ(p 3/2 )

32 Sekce B109 Návrh a implementace paralelních systémů: Analytický model paralelních programů str. 32/?? Další metriky

33 Minimální doba výpočtu B109 Návrh a implementace paralelních systémů: Analytický model paralelních programů str. 33/?? Jaká je minimální možná doba výpočtu (TP min ) při dostupnosti dostatečného počtu procesních jednotek? Pozorování, při rostoucím p T P se asymptoticky blíží k TP min Po dosažení TP min se T P zvětšuje spolu s p Jak zjistit T min P? Nechť p 0 je řešením diferenciální rovnice dt P dp = 0 Dosazení p 0 do vztahu pro T P dává hodnotu T min P Příklad součet n čísel p procesními jednotkami T P = n dt p + 2log p, p 0 = n 2, P dp = n p p T min P = 2log n = Θ(log n)

34 Optimální doba výpočtu B109 Návrh a implementace paralelních systémů: Analytický model paralelních programů str. 34/?? cost opt TP označuje minimální čas, ve kterém může být problém řešen cenově optimálním paralelním systémem. Pozorování Jestliže funkce izoefektivity je T S = Θ(f (p)), tak Problém, může být řešen cenově optimálně pouze pokud T S = Ω(f (p)) (vztah izoefektivity a cenové optimality) Pro cenově optimální řešení musí být p = O(f 1 (T S )) Cenově optimalita vyjádřena vztahem pt P = T S, tj. T P = T S p Lze odvodit, že ( cost opt T ) S TP = Ω f 1 (T S )

35 Optimální doba výpočtu příklad B109 Návrh a implementace paralelních systémů: Analytický model paralelních programů str. 35/?? Příklad sčítání n čísel s využitím p procesních jednotek Izoefektivita Θ(p log p) T S = n = f (p) = p log p takže máme n = p log p p = n log p n log n f 1 (T S ) = Θ ( n log n ) cost opt TP = Θ(log n) Pozorování T min P = T cost opt P Cenově optimální řešení je zároveň asymptoticky nejlepší

36 Optimální a minimální doba výpočtu B109 Návrh a implementace paralelních systémů: Analytický model paralelních programů str. 36/?? Pozorování cost opt P Existují případy, kdy T > TP min (vzácné) Například pro systém, kde T O = p 3/2 + p 3/4 T 3/4 T min P = Θ(T 1/2 S cost opt ) ale TP = Θ(T 2/3 S ) S platí cost opt Vlastnost systému s TP > TP min Přidáním neúměrně velkého počtu procesních jednotek se asymptoticky pomaleji zkrátí doba výpočtu Například zvýšení počtu procesních jednotek o faktor n sníží čas výpočtu o faktor log n

37 Asymptotická analýza paralelních programů B109 Návrh a implementace paralelních systémů: Analytický model paralelních programů str. 37/?? Algoritmus A1 A2 A3 A4 p n 2 log n n n T P 1 n S n log n log n n nlog n nlog n n E log n n 1 log n n 1 pt P n 2 n log n n 1.5 n log n Otázky Jaký algoritmus je nejlepší? Použily jsme vhodné odhady složitosti? Je dostupná odpovídající paralelní architektura?

38 Jiné metriky škálování B109 Návrh a implementace paralelních systémů: Analytický model paralelních programů str. 38/?? Požadavky na aplikace se neslučující s existujícími metrikami Schopnost reakce v reálném čase Dominující paměťové nároky Škálované zrychlení Zrychlení, pokud se T S vyjádří jako funkce k p Příklad, násobení matic Vztah T S vůči paměťovým nárokům Θ(n 2 ) = c m p T S jako časová složitost Θ(n 3 ) = c t p

4. Úvod do paralelismu, metody paralelizace

4. Úvod do paralelismu, metody paralelizace 4. Úvod do paralelismu, metody paralelizace algoritmů Ing. Michal Bližňák, Ph.D. Ústav informatiky a umělé inteligence Fakulta aplikované informatiky UTB Zĺın Paralelní procesy a programování, Zĺın, 26.

Více

Časová složitost / Time complexity

Časová složitost / Time complexity Časová složitost / Time complexity Jan Kybic http://cmp.felk.cvut.cz/~kybic kybic@fel.cvut.cz 2016 2018 1 / 24 Složitost algoritmů Algorithm complexity Časová a paměťová složitost Trvání výpočtu v závislosti

Více

Algoritmy I, složitost

Algoritmy I, složitost A0B36PRI - PROGRAMOVÁNÍ Algoritmy I, složitost České vysoké učení technické Fakulta elektrotechnická v 1.01 Rychlost... Jeden algoritmus (program, postup, metoda ) je rychlejší než druhý. Co ta věta znamená??

Více

Návrh paralelních algoritmů

Návrh paralelních algoritmů Návrh paralelních algoritmů Úvod Návrh paralelních algoritmů Task/channel model Fosterova metodika návrhu paralelních algoritmů Partitioning Communication Aglomerace Mapování Modely paralelních algoritmů

Více

Doba běhu daného algoritmu/programu. 1. Který fragment programu z následujících dvou proběhne rychleji?

Doba běhu daného algoritmu/programu. 1. Který fragment programu z následujících dvou proběhne rychleji? 1 Doba běhu daného algoritmu/programu 1. Který fragment programu z následujících dvou proběhne rychleji? int n = 100; int sum = 0; for (i = 0; i < n; i++) for (j = 0; j < i; j++) sum += i+j; int n = 75;

Více

Digitální učební materiál

Digitální učební materiál Digitální učební materiál Číslo projektu: CZ.1.07/1.5.00/34.0548 Název školy: Gymnázium, Trutnov, Jiráskovo náměstí 325 Název materiálu: VY_32_INOVACE_148_IVT Autor: Ing. Pavel Bezděk Tematický okruh:

Více

Algoritmizace. Jiří Vyskočil, Marko Genyg-Berezovskyj 2010

Algoritmizace. Jiří Vyskočil, Marko Genyg-Berezovskyj 2010 Jiří Vyskočil, Marko Genyg-Berezovskyj 2010 Úvod stránky předmětu: https://cw.felk.cvut.cz/doku.php/courses/a4b33alg/start cíle předmětu Cílem je schopnost samostatné implementace různých variant základních

Více

Paralelní a distribuované výpočty (B4B36PDV)

Paralelní a distribuované výpočty (B4B36PDV) Paralelní a distribuované výpočty (B4B36PDV) Branislav Bošanský, Michal Jakob bosansky@fel.cvut.cz Artificial Intelligence Center Department of Computer Science Faculty of Electrical Engineering Czech

Více

Martin Lísal. Úvod do MPI

Martin Lísal. Úvod do MPI Martin Lísal září 2003 PARALELNÍ POČÍTÁNÍ Úvod do MPI 1 1 Co je to paralelní počítání? Paralelní počítání je počítání na paralelních počítačích či jinak řečeno využití více než jednoho procesoru při výpočtu

Více

ČVUT FEL X36PAA - Problémy a algoritmy. 4. úloha - Experimentální hodnocení algoritmů pro řešení problému batohu

ČVUT FEL X36PAA - Problémy a algoritmy. 4. úloha - Experimentální hodnocení algoritmů pro řešení problému batohu ČVUT FEL X36PAA - Problémy a algoritmy 4. úloha - Experimentální hodnocení algoritmů pro řešení problému batohu Jméno: Marek Handl Datum: 3. 2. 29 Cvičení: Pondělí 9: Zadání Prozkoumejte citlivost metod

Více

Static Load Balancing Applied to Time Dependent Mechanical Problems

Static Load Balancing Applied to Time Dependent Mechanical Problems Static Load Balancing Applied to Time Dependent Mechanical Problems O. Medek 1, J. Kruis 2, Z. Bittnar 2, P. Tvrdík 1 1 Katedra počítačů České vysoké učení technické, Praha 2 Katedra stavební mechaniky

Více

Datové struktury 2: Rozptylovací tabulky

Datové struktury 2: Rozptylovací tabulky Datové struktury 2: Rozptylovací tabulky prof. Ing. Pavel Tvrdík CSc. Katedra počítačových systémů Fakulta informačních technologií České vysoké učení technické v Praze c Pavel Tvrdík, 2010 Efektivní algoritmy

Více

Časová a prostorová složitost algoritmů

Časová a prostorová složitost algoritmů .. Časová a prostorová složitost algoritmů Programovací techniky doc. Ing. Jiří Rybička, Dr. ústav informatiky PEF MENDELU v Brně rybicka@mendelu.cz Hodnocení algoritmů Programovací techniky Časová a prostorová

Více

OPS Paralelní systémy, seznam pojmů, klasifikace

OPS Paralelní systémy, seznam pojmů, klasifikace Moorův zákon (polovina 60. let) : Výpočetní výkon a počet tranzistorů na jeden CPU chip integrovaného obvodu mikroprocesoru se každý jeden až dva roky zdvojnásobí; cena se zmenší na polovinu. Paralelismus

Více

Asymptotická složitost algoritmů

Asymptotická složitost algoritmů Semestrální projekt 1 Y14TED Asymptotická složitost algoritmů Autor: Antonín DANĚK Osnova Slide 2 Co je to složitost algoritmu? Jak se počítá složitost algoritmu? Smysl přesného výpočtu složitosti algoritmu

Více

PARALELNÍ PROCESY A PROGRAMOVÁNÍ

PARALELNÍ PROCESY A PROGRAMOVÁNÍ PARALELNÍ PROCESY A PROGRAMOVÁNÍ 6 Analýza složitosti algoritmů - cena, ráce a efektivita Ing. Michal Bližňák, Ph.D. Zlín 2013 Tento studijní materiál vznikl za finanční odory Evroského sociálního fondu

Více

ÚVODNÍ ZNALOSTI. datové struktury. správnost programů. analýza algoritmů

ÚVODNÍ ZNALOSTI. datové struktury. správnost programů. analýza algoritmů ÚVODNÍ ZNALOSTI datové struktury správnost programů analýza algoritmů Datové struktury základní, primitivní, jednoduché datové typy: int, char,... hodnoty: celá čísla, znaky, jednoduché proměnné: int i;

Více

Dynamické programování

Dynamické programování ALG 11 Dynamické programování Úloha batohu neomezená Úloha batohu /1 Úloha batohu / Knapsack problem Máme N předmětů, každý s váhou Vi a cenou Ci (i = 1, 2,..., N) a batoh s kapacitou váhy K. Máme naložit

Více

Různé algoritmy mají různou složitost

Různé algoritmy mají různou složitost / 1 Různé algoritmy mají různou složitost 1/ 1 Rychlost... Jeden algoritmus (program, postup, metoda ) je rychlejší než druhý. Co ta věta znamená?? 2/ 1 Asymptotická složitost y y x x Každému algoritmu

Více

Digitální učební materiál

Digitální učební materiál Digitální učební materiál Číslo projektu: CZ.1.07/1.5.00/34.0548 Název školy: Gymnázium, Trutnov, Jiráskovo náměstí 325 Název materiálu: VY_32_INOVACE_146_IVT Autor: Ing. Pavel Bezděk Tematický okruh:

Více

Paralení programování pro vícejádrové stroje s použitím OpenMP. B4B36PDV Paralelní a distribuované výpočty

Paralení programování pro vícejádrové stroje s použitím OpenMP. B4B36PDV Paralelní a distribuované výpočty Paralení programování pro vícejádrové stroje s použitím OpenMP B4B36PDV Paralelní a distribuované výpočty Minulé cvičení: Vlákna a jejich synchronizace v C++ 11... 1 Minulé cvičení: Vlákna a jejich synchronizace

Více

NMIN101 Programování 1 2/2 Z --- NMIN102 Programování /2 Z, Zk

NMIN101 Programování 1 2/2 Z --- NMIN102 Programování /2 Z, Zk NMIN101 Programování 1 2/2 Z --- NMIN102 Programování 2 --- 2/2 Z, Zk Pavel Töpfer Katedra software a výuky informatiky MFF UK MFF Malostranské nám., 4. patro, pracovna 404 pavel.topfer@mff.cuni.cz http://ksvi.mff.cuni.cz/~topfer

Více

Složitost algoritmů. doc. Mgr. Jiří Dvorský, Ph.D. Katedra informatiky Fakulta elektrotechniky a informatiky VŠB TU Ostrava

Složitost algoritmů. doc. Mgr. Jiří Dvorský, Ph.D. Katedra informatiky Fakulta elektrotechniky a informatiky VŠB TU Ostrava Složitost algoritmů doc. Mgr. Jiří Dvorský, Ph.D. Katedra informatiky Fakulta elektrotechniky a informatiky VŠB TU Ostrava Prezentace ke dni 27. prosince 2015 Jiří Dvorský (VŠB TUO) Složitost algoritmů

Více

2. Složitost, grafové algoritmy (zapsal Martin Koutecký)

2. Složitost, grafové algoritmy (zapsal Martin Koutecký) 2. Složitost, grafové algoritmy (zapsal Martin Koutecký) Model Ram Při analýze algoritmu bychom chtěli nějak popsat jeho složitost. Abychom mohli udělat toto, potřebujeme nejprve definovat výpočetní model.

Více

Obecné výpočty na GPU v jazyce CUDA. Jiří Filipovič

Obecné výpočty na GPU v jazyce CUDA. Jiří Filipovič Obecné výpočty na GPU v jazyce CUDA Jiří Filipovič Obsah přednášky motivace architektura GPU CUDA programovací model jaké algoritmy urychlovat na GPU? optimalizace Motivace Moorův zákon stále platí pro

Více

PARALELNÍ PROCESY A PROGRAMOVÁNÍ

PARALELNÍ PROCESY A PROGRAMOVÁNÍ PARALELNÍ PROCESY A PROGRAMOVÁNÍ 12 Paralelní algoritmy - paralelní prefixové součty Ing Michal Bližňák, PhD Zlín 2013 Tento studijní materiál vznikl za finanční podpory Evropského sociálního fondu (ESF)

Více

3. úloha - problém batohu metodami branch & bound, dynamické programování, heuristika s testem

3. úloha - problém batohu metodami branch & bound, dynamické programování, heuristika s testem ČVUT FEL X36PAA - Problémy a algoritmy 3. úloha - problém batohu metodami branch & bound, dynamické programování, heuristika s testem Jméno: Marek Handl Datum: 1. 1. 2009 Cvičení: Pondělí 9:00 Zadání Naprogramujte

Více

Paralelní algoritmy v lineární algebře. Násobení matic

Paralelní algoritmy v lineární algebře. Násobení matic Paralelní algoritmy v lineární algebře Násobení matic Násobení matic mějme matice A, B, C R n,n počítáme součin C = AB mějme p procesu a necht p je mocnina dvou matice rozdělíme blokově na p p bloků pak

Více

IB109 Návrh a implementace paralelních systémů. Organizace kurzu a úvod. RNDr. Jiří Barnat, Ph.D.

IB109 Návrh a implementace paralelních systémů. Organizace kurzu a úvod. RNDr. Jiří Barnat, Ph.D. IB109 Návrh a implementace paralelních systémů Organizace kurzu a úvod RNDr. Jiří Barnat, Ph.D. Sekce B109 Návrh a implementace paralelních systémů: Organizace kurzu a úvod str. 2/25 Organizace kurzu Organizace

Více

Vyvažování a rotace v BVS, všude se předpokládá AVL strom

Vyvažování a rotace v BVS, všude se předpokládá AVL strom Vyvažování a rotace v BVS, všude se předpokládá AVL strom 1. Jednoduchá levá rotace v uzlu u má operační složitost a) závislou na výšce levého podstromu uzlu u b) mezi O(1) a Θ(n) c) závislou na hloubce

Více

Vektory a matice. Obsah. Aplikovaná matematika I. Carl Friedrich Gauss. Základní pojmy a operace

Vektory a matice. Obsah. Aplikovaná matematika I. Carl Friedrich Gauss. Základní pojmy a operace Vektory a matice Aplikovaná matematika I Dana Říhová Mendelu Brno Obsah 1 Vektory Základní pojmy a operace Lineární závislost a nezávislost vektorů 2 Matice Základní pojmy, druhy matic Operace s maticemi

Více

Exponenciální modely hromadné obsluhy

Exponenciální modely hromadné obsluhy Exponenciální modely hromadné obsluhy Systém s čekáním a neohraničeným zdrojem požadavků Na základě předchozích informací je potřeba probrat, jaké informace jsou dostupné v počtu pravděpodobnosti řešícím

Více

Obsah. Kapitola 1 Hardware, procesory a vlákna Prohlídka útrob počítače...20 Motivace pro vícejádrové procesory...21

Obsah. Kapitola 1 Hardware, procesory a vlákna Prohlídka útrob počítače...20 Motivace pro vícejádrové procesory...21 Stručný obsah 1. Hardware, procesory a vlákna... 19 2. Programování s ohledemna výkon... 45 3. Identifikování příležitostí pro paralelizmus... 93 4. Synchronizace a sdílení dat... 123 5. Vlákna v rozhraní

Více

a počtem sloupců druhé matice. Spočítejme součin A.B. Označme matici A.B = M, pro její prvky platí:

a počtem sloupců druhé matice. Spočítejme součin A.B. Označme matici A.B = M, pro její prvky platí: Řešené příklady z lineární algebry - část 1 Typové příklady s řešením Příklady jsou určeny především k zopakování látky před zkouškou, jsou proto řešeny se znalostmi učiva celého semestru. Tento fakt se

Více

Složitost 1.1 Opera ní a pam ová složitost 1.2 Opera ní složitost v pr rném, nejhorším a nejlepším p ípad 1.3 Asymptotická složitost

Složitost 1.1 Opera ní a pam ová složitost 1.2 Opera ní složitost v pr rném, nejhorším a nejlepším p ípad 1.3 Asymptotická složitost 1 Složitost 1.1 Operační a paměťová složitost Nezávislé určení na konkrétní implementaci Několik typů operací = sčítání T+, logické T L, přiřazení T A(assign), porovnání T C(compare), výpočet adresy pole

Více

Operace ALU. INP 2008 FIT VUT v Brně

Operace ALU. INP 2008 FIT VUT v Brně Operace ALU INP 2008 FIT VUT v Brně 1 Princip ALU (FX) Požadavky: Logické operace Sčítání (v doplňkovém kódu) Posuvy/rotace Násobení ělení B A not AN OR XOR + Y 1) Implementace logických operací je zřejmá

Více

IB109 Návrh a implementace paralelních systémů. Kolektivní komunikační primitava. RNDr. Jiří Barnat, Ph.D.

IB109 Návrh a implementace paralelních systémů. Kolektivní komunikační primitava. RNDr. Jiří Barnat, Ph.D. IB109 Návrh a implementace paralelních systémů Kolektivní komunikační primitava RNDr. Jiří Barnat, Ph.D. Kvantitativní parametry komunikace B109 Návrh a implementace paralelních systémů: Kolektivní komunikační

Více

Paralelní grafové algoritmy

Paralelní grafové algoritmy Paralelní grafové algoritmy Značení Minimální kostra grafu Nejkratší cesta z jednoho uzlu Nejkratší cesta mezi všemi dvojicemi uzlů Použité značení Definition Bud G = (V, E) graf. Pro libovolný uzel u

Více

6. Teorie výroby Průvodce studiem: 6.2 Produkční analýza v krátkém období celkový (fyzický) produkt (TP)

6. Teorie výroby Průvodce studiem: 6.2 Produkční analýza v krátkém období celkový (fyzický) produkt (TP) 6. Teorie výroby Firma vystupuje na trhu finální produkce v pozici nabízejícího a současně na trhu výrobních faktorů v pozici poptávajícího. Firma používá různé vstupy (výrobní faktory), které ve výrobě

Více

Složitost algoritmů. Karel Richta a kol. Katedra počítačů Fakulta elektrotechnická České vysoké učení technické v Praze Karel Richta a kol.

Složitost algoritmů. Karel Richta a kol. Katedra počítačů Fakulta elektrotechnická České vysoké učení technické v Praze Karel Richta a kol. Složitost algoritmů Karel Richta a kol. Katedra počítačů Fakulta elektrotechnická České vysoké učení technické v Praze Karel Richta a kol., 2017 Datové struktury a algoritmy, B6B36DSA 02/2017, Lekce 3

Více

ALGORITMY A DATOVÉ STRUKTURY

ALGORITMY A DATOVÉ STRUKTURY Název tématického celku: Cíl: ALGORITMY A DATOVÉ STRUKTURY Metodický list č. 1 Časová složitost algoritmů Základním cílem tohoto tematického celku je vysvětlení potřebných pojmů a definic nutných k popisu

Více

VYBRANÉ PARTIE Z NUMERICKÉ MATEMATIKY

VYBRANÉ PARTIE Z NUMERICKÉ MATEMATIKY VYBRANÉ PARTIE Z NUMERICKÉ MATEMATIKY Jan Krejčí 31. srpna 2006 jkrejci@physics.ujep.cz http://physics.ujep.cz/~jkrejci Obsah 1 Přímé metody řešení soustav lineárních rovnic 3 1.1 Gaussova eliminace...............................

Více

Úvod do B4B36PDV. Organizace předmětu a seznámení se s paralelizací. B4B36PDV Paralelní a distribuované výpočty

Úvod do B4B36PDV. Organizace předmětu a seznámení se s paralelizací. B4B36PDV Paralelní a distribuované výpočty Úvod do B4B36PDV Organizace předmětu a seznámení se s paralelizací B4B36PDV Paralelní a distribuované výpočty Osnova Čím se budeme zabývat? Hodnocení předmětu Úvod do paralelního hardwaru a softwaru 1

Více

1 Test 1 naivní vs standardní

1 Test 1 naivní vs standardní . DÚ Nafukovací pole Datové Struktury I Studentus Maximus Takto jsou zobrazeny poznámky cvičících k tomu, co a jak je tu napsáno, skutečný text je mimo oranžové rámečky. Počítač, na kterém byly provedeny

Více

Přehled paralelních architektur. Dělení paralelních architektur Flynnova taxonomie Komunikační modely paralelních architektur

Přehled paralelních architektur. Dělení paralelních architektur Flynnova taxonomie Komunikační modely paralelních architektur Přehled paralelních architektur Přehled paralelních architektur Dělení paralelních architektur Flynnova taxonomie Komunikační modely paralelních architektur Přehled I. paralelní počítače se konstruují

Více

V každém kroku se a + b zmenší o min(a, b), tedy vždy alespoň o 1. Jestliže jsme na začátku dostali 2

V každém kroku se a + b zmenší o min(a, b), tedy vždy alespoň o 1. Jestliže jsme na začátku dostali 2 Euklidův algoritmus Doprovodný materiál pro cvičení Programování I. NPRM044 Autor: Markéta Popelová Datum: 31.10.2010 Euklidův algoritmus verze 1.0 Zadání: Určete největšího společného dělitele dvou zadaných

Více

Cíle a měřitelné parametry budování a provozu egc. Příloha č. 1 Souhrnné analytické zprávy

Cíle a měřitelné parametry budování a provozu egc. Příloha č. 1 Souhrnné analytické zprávy Cíle a měřitelné parametry budování a provozu egc Příloha č. 1 Souhrnné analytické zprávy Projekt Příprava vybudování egovernment cloudu Fáze: Úkol: Odpovědný subjekt: FÁZE I. (přípravná) Předložit Vládě

Více

Obsah. Euler-Fermatova věta. Reziduální aritmetika. 3. a 4. přednáška z kryptografie

Obsah. Euler-Fermatova věta. Reziduální aritmetika. 3. a 4. přednáška z kryptografie Obsah Počítání modulo n a jeho časová složitost 3. a 4. přednáška z kryptografie 1 Počítání modulo n - dokončení Umocňování v Zn 2 Časová složitost výpočtů modulo n Asymptotická notace Základní aritmetické

Více

1 Definice problému a popis sekvenčního algoritmu

1 Definice problému a popis sekvenčního algoritmu Semestrální projekt X36PAR 2008/2009: Paralelní algoritmus pro řešení problému Marek Handl. ročník, obor výpočetní technika K336 FEL ČVUT, Karlovo nám. 13, 121 3 Praha 2 May 17, 2009 1 Definice problému

Více

9.5. Soustavy diferenciálních rovnic

9.5. Soustavy diferenciálních rovnic Cíle Budeme se nyní zabývat úlohami, v nichž je cílem najít dvojici funkcí y(x), z(x), pro které jsou zadány dvě lineární rovnice prvního řádu, obsahující tyto funkce a jejich derivace. Výklad Omezíme-li

Více

Mimo samotné správnosti výsledku vypočteného zapsaným algoritmem je ještě jedno

Mimo samotné správnosti výsledku vypočteného zapsaným algoritmem je ještě jedno 12 Délka výpočtu algoritmu Mimo samotné správnosti výsledku vypočteného zapsaným algoritmem je ještě jedno neméně důležité hledisko k posouzení vhodnosti algoritmu k řešení zadané úlohy. Jedná se o čas,

Více

Bakalářská matematika I

Bakalářská matematika I 1. Funkce Diferenciální počet Mgr. Jaroslav Drobek, Ph. D. Katedra matematiky a deskriptivní geometrie Bakalářská matematika I Některé užitečné pojmy Kartézský součin podrobnosti Definice 1.1 Nechť A,

Více

Zdůvodněte, proč funkce n lg(n) roste alespoň stejně rychle nebo rychleji než než funkce lg(n!). Symbolem lg značíme logaritmus o základu 2.

Zdůvodněte, proč funkce n lg(n) roste alespoň stejně rychle nebo rychleji než než funkce lg(n!). Symbolem lg značíme logaritmus o základu 2. 1 3 4 5 6 7 8 9 10 11 1 13 14 15 16 17 18 19 0 1 3 4 5 6 7 8 9 30 31 3 Zdůvodněte, proč funkce f(n) = n log(n) 1 n 1/ roste rychleji než funkce g(n) = n. Zdůvodněte, proč funkce f(n) = n 3/ log(n) roste

Více

Příklad 1/23. Pro rostoucí spojité fukce f(x), g(x) platí f(x) Ω(g(x)). Z toho plyne, že: a) f(x) Ο(g(x)) b) f(x) Θ(g(x)) d) g(x) Ω(f(x))

Příklad 1/23. Pro rostoucí spojité fukce f(x), g(x) platí f(x) Ω(g(x)). Z toho plyne, že: a) f(x) Ο(g(x)) b) f(x) Θ(g(x)) d) g(x) Ω(f(x)) Příklad 1/23 Pro rostoucí spojité fukce f(x), g(x) platí f(x) Ω(g(x)). Z toho plyne, že: a) f(x) Ο(g(x)) b) f(x) Θ(g(x)) c) g(x) Θ(f(x)) d) g(x) Ω(f(x)) e) g(x) Ο(f(x)) 1 Příklad 2/23 Pro rostoucí spojité

Více

Matematika B101MA1, B101MA2

Matematika B101MA1, B101MA2 Matematika B101MA1, B101MA2 Zařazení předmětu: povinný předmět 1.ročníku bc studia 2 semestry Rozsah předmětu: prezenční studium 2 + 2 kombinované studium 16 + 0 / semestr Zakončení předmětu: ZS zápočet

Více

Zavedení a vlastnosti reálných čísel

Zavedení a vlastnosti reálných čísel Zavedení a vlastnosti reálných čísel jsou základním kamenem matematické analýzy. Konstrukce reálných čísel sice není náplní matematické analýzy, ale množina reálných čísel R je pro matematickou analýzu

Více

10. Složitost a výkon

10. Složitost a výkon Jiří Vokřínek, 2016 B6B36ZAL - Přednáška 10 1 Základy algoritmizace 10. Složitost a výkon doc. Ing. Jiří Vokřínek, Ph.D. Katedra počítačů Fakulta elektrotechnická České vysoké učení technické v Praze Jiří

Více

Matice. Modifikace matic eliminační metodou. α A = α a 2,1, α a 2,2,..., α a 2,n α a m,1, α a m,2,..., α a m,n

Matice. Modifikace matic eliminační metodou. α A = α a 2,1, α a 2,2,..., α a 2,n α a m,1, α a m,2,..., α a m,n [1] Základní pojmy [2] Matice mezi sebou sčítáme a násobíme konstantou (lineární prostor) měníme je na jiné matice eliminační metodou násobíme je mezi sebou... Matice je tabulka čísel s konečným počtem

Více

COMPLEXITY

COMPLEXITY Níže uvedené úlohy představují přehled otázek, které se vyskytly v tomto nebo v minulých semestrech ve cvičení nebo v minulých semestrech u zkoušky. Mezi otázkami semestrovými a zkouškovými není žádný

Více

Paralelní programování

Paralelní programování Paralelní programování přednáška 5 Michal Krupka 15. března 2011 Michal Krupka (KI UP) Paralelní programování 15. března 2011 1 / 13 Ještě ke kritickým sekcím Použití v praxi obvykle pomocí zámků (locks)

Více

Složitost. Teoretická informatika Tomáš Foltýnek

Složitost. Teoretická informatika Tomáš Foltýnek Složitost Teoretická informatika Tomáš Foltýnek foltynek@pef.mendelu.cz Teoretická informatika 2 Opakování z minulé přednášky Co říká Churchova teze? Jak lze kódovat Turingův stroj? Co je to Univerzální

Více

Objektově orientovaná implementace škálovatelných algoritmů pro řešení kontaktních úloh

Objektově orientovaná implementace škálovatelných algoritmů pro řešení kontaktních úloh Objektově orientovaná implementace škálovatelných algoritmů pro řešení kontaktních úloh Václav Hapla Katedra aplikované matematiky Fakulta elektrotechniky a informatiky VŠB-Technická univerzita Ostrava

Více

PDV /2018 Detekce selhání

PDV /2018 Detekce selhání PDV 08 2017/2018 Detekce selhání Michal Jakob michal.jakob@fel.cvut.cz Centrum umělé inteligence, katedra počítačů, FEL ČVUT Detekce selhání Systémy založeny na skupinách procesů cloudy / datová centra

Více

Zpráva o průběhu přijímacího řízení na vysokých školách dle Vyhlášky MŠMT č. 343/2002 a její změně 276/2004 Sb.

Zpráva o průběhu přijímacího řízení na vysokých školách dle Vyhlášky MŠMT č. 343/2002 a její změně 276/2004 Sb. Zpráva o průběhu přijímacího řízení na vysokých školách dle Vyhlášky MŠMT č. 343/2002 a její změně 276/2004 Sb. 1. Informace o přijímacích zkouškách Studijní program: Informatika navazující magisterský

Více

A6M33SSL: Statistika a spolehlivost v lékařství Teorie spolehlivosti Přednáška 2

A6M33SSL: Statistika a spolehlivost v lékařství Teorie spolehlivosti Přednáška 2 A6M33SSL: Statistika a spolehlivost v lékařství Teorie spolehlivosti Přednáška 2 Vojta Vonásek vonasek@labe.felk.cvut.cz České vysoké učení technické v Praze Fakulta elektrotechnická Katedra kybernetiky

Více

Třídy složitosti P a NP, NP-úplnost

Třídy složitosti P a NP, NP-úplnost Třídy složitosti P a NP, NP-úplnost Cíle přednášky: 1. Definovat, za jakých okolností můžeme problém považovat za efektivně algoritmicky řešitelný. 2. Charakterizovat určitou skupinu úloh, pro které není

Více

NMIN101 Programování 1 2/2 Z --- NMIN102 Programování /2 Z, Zk

NMIN101 Programování 1 2/2 Z --- NMIN102 Programování /2 Z, Zk NMIN101 Programování 1 2/2 Z --- NMIN102 Programování 2 --- 2/2 Z, Zk Pavel Töpfer Katedra software a výuky informatiky MFF UK MFF Malostranské nám., 4. patro, pracovna 404 pavel.topfer@mff.cuni.cz http://ksvi.mff.cuni.cz/~topfer

Více

Da D to t v o é v ty t py IB111: Datové typy

Da D to t v o é v ty t py IB111: Datové typy Datové typy IB111: Datové typy Data a algoritmizace jaká data potřebuji pro vyřešení problému? jak budu data reprezentovat? jaké operaci s nimi potřebuji provádět? Navržení práce s daty je velice důležité

Více

Základy algoritmizace, návrh algoritmu

Základy algoritmizace, návrh algoritmu Základy algoritmizace, návrh algoritmu Algoritmus Předpoklady automatického výpočtu: předem stanovit (rozmyslet) přesný postup během opakovaného provádění postupu již nepřemýšlet a postupovat mechanicky

Více

Kapitola 13: Transakce. Koncept transakce. ACID vlastnosti

Kapitola 13: Transakce. Koncept transakce. ACID vlastnosti - 13.1 - Kapitola 13: Transakce Koncept transakce Stavy transakce Implementace atomičnosti a trvanlivosti Souběžné spouštění Serializovatelnost Koncept transakce Transakce je posloupnost operací (část

Více

PŘIJÍMACÍ TEST z informatiky a matematiky pro navazující magisterské studium Fakulta informatiky a managementu Univerzity Hradec Králové

PŘIJÍMACÍ TEST z informatiky a matematiky pro navazující magisterské studium Fakulta informatiky a managementu Univerzity Hradec Králové PŘIJÍMACÍ TEST z informatiky a matematiky pro navazující magisterské studium Fakulta informatiky a managementu Univerzity Hradec Králové Registrační číslo Hodnocení část A Hodnocení část B Hodnocení A+B

Více

Vztah teorie vyčíslitelnosti a teorie složitosti. IB102 Automaty, gramatiky a složitost, /31

Vztah teorie vyčíslitelnosti a teorie složitosti. IB102 Automaty, gramatiky a složitost, /31 Vztah teorie vyčíslitelnosti a teorie složitosti IB102 Automaty, gramatiky a složitost, 2. 12. 2013 1/31 IB102 Automaty, gramatiky a složitost, 2. 12. 2013 2/31 Časová složitost algoritmu počet kroků výpočtu

Více

4. Stanovení teplotního součinitele odporu kovů

4. Stanovení teplotního součinitele odporu kovů 4. Stanovení teplotního součinitele odporu kovů 4.. Zadání úlohy. Změřte teplotní součinitel odporu mědi v rozmezí 20 80 C. 2. Změřte teplotní součinitel odporu platiny v rozmezí 20 80 C. 3. Vyneste graf

Více

Numerické modelování interakce proudění a pružného tělesa v lidském vokálním traktu

Numerické modelování interakce proudění a pružného tělesa v lidském vokálním traktu Numerické modelování interakce proudění a pružného tělesa v lidském vokálním traktu Vedoucí práce: doc. Ing. Petr Šidlof, Ph.D. Bc. Petra Tisovská 22. května 2018 Studentská 2 461 17 Liberec 2 petra.tisovska@tul.cz

Více

Úvod do kvantového počítání

Úvod do kvantového počítání 2. přednáška Katedra počítačů, Fakulta elektrotechnická České vysoké učení technické v Praze 17. března 2005 Opakování Část I Přehled z minulé hodiny Opakování Alternativní výpočetní modely Kvantové počítače

Více

maticeteorie 1. Matice A je typu 2 4, matice B je typu 4 3. Jakých rozměrů musí být matice X, aby se dala provést

maticeteorie 1. Matice A je typu 2 4, matice B je typu 4 3. Jakých rozměrů musí být matice X, aby se dala provést Úlohy k zamyšlení 1. Zdůvodněte, proč třetí řádek Hornerova schématu pro vyhodnocení polynomu p v bodě c obsahuje koeficienty polynomu r, pro který platí p(x) = (x c) r(x) + p(c). 2. Dokažte, že pokud

Více

Dynamické programování

Dynamické programování Dynamické programování prof. Ing. Pavel Tvrdík CSc. Katedra počítačových systémů Fakulta informačních technologií České vysoké učení technické v Praze c Pavel Tvrdík, 2010 Efektivní algoritmy (BI-EFA)

Více

Návrh Designu: Radek Mařík

Návrh Designu: Radek Mařík 1. 7. Najděte nejdelší rostoucí podposloupnost dané posloupnosti. Použijte metodu dynamického programování, napište tabulku průběžných délek částečných výsledků a tabulku předchůdců. a) 5 8 11 13 9 4 1

Více

NPRG030 Programování I 3/2 Z --- NPRG031 Programování II --- 2/2 Z, Zk

NPRG030 Programování I 3/2 Z --- NPRG031 Programování II --- 2/2 Z, Zk NPRG030 Programování I 3/2 Z --- NPRG031 Programování II --- 2/2 Z, Zk Pavel Töpfer Katedra softwaru a výuky informatiky MFF UK MFF Malostranské nám., 4. patro, pracovna 404 pavel.topfer@mff.cuni.cz http://ksvi.mff.cuni.cz/~topfer

Více

Vlákno (anglicky: thread) v informatice označuje vlákno výpočtu neboli samostatný výpočetní tok, tedy posloupnost po sobě jdoucích operací.

Vlákno (anglicky: thread) v informatice označuje vlákno výpočtu neboli samostatný výpočetní tok, tedy posloupnost po sobě jdoucích operací. Trochu teorie Vlákno (anglicky: thread) v informatice označuje vlákno výpočtu neboli samostatný výpočetní tok, tedy posloupnost po sobě jdoucích operací. Každá spuštěná aplikace má alespoň jeden proces

Více

5. Umělé neuronové sítě. Neuronové sítě

5. Umělé neuronové sítě. Neuronové sítě Neuronové sítě Přesný algoritmus práce přírodních neuronových systémů není doposud znám. Přesto experimentální výsledky na modelech těchto systémů dávají dnes velmi slibné výsledky. Tyto systémy, včetně

Více

Tento dokument obsahuje zadání pro semestrální programy z PAA. Vypracování. vypracovanou úlohu podle níže uvedených zadání. To mimo jiné znamená, že

Tento dokument obsahuje zadání pro semestrální programy z PAA. Vypracování. vypracovanou úlohu podle níže uvedených zadání. To mimo jiné znamená, že Kapitola Zadání Tento dokument obsahuje zadání pro semestrální programy z PAA. Vypracování alespoň jedné úlohy je nutnou podmínkou pro úspěšné složení zkoušky resp. získaní (klasifikovaného) zápočtu (viz.

Více

Testování hypotéz o parametrech regresního modelu

Testování hypotéz o parametrech regresního modelu Statistika II Katedra ekonometrie FVL UO Brno kancelář 69a, tel. 973 442029 email:jiri.neubauer@unob.cz Lineární regresní model kde Y = Xβ + e, y 1 e 1 β y 2 Y =., e = e 2 x 11 x 1 1k., X =....... β 2,

Více

Testování hypotéz o parametrech regresního modelu

Testování hypotéz o parametrech regresního modelu Testování hypotéz o parametrech regresního modelu Ekonometrie Jiří Neubauer Katedra kvantitativních metod FVL UO Brno kancelář 69a, tel. 973 442029 email:jiri.neubauer@unob.cz Jiří Neubauer (Katedra UO

Více

Dynamické programování UIN009 Efektivní algoritmy 1

Dynamické programování UIN009 Efektivní algoritmy 1 Dynamické programování. 10.3.2005 UIN009 Efektivní algoritmy 1 Srovnání metody rozděl a panuj a dynamického programování Rozděl a panuj: top-down Dynamické programování: bottom-up Rozděl a panuj: překrývání

Více

Numerická stabilita algoritmů

Numerická stabilita algoritmů Numerická stabilita algoritmů Petr Tichý 9. října 2013 1 Numerická stabilita algoritmů Pravidla v konečné aritmetice Pro počítání v konečné aritmetice počítače platí určitá pravidla, která jsou důležitá

Více

NP-ÚPLNÉ PROBLÉMY. Doc. RNDr. Josef Kolář, CSc. Katedra teoretické informatiky, FIT České vysoké učení technické v Praze

NP-ÚPLNÉ PROBLÉMY. Doc. RNDr. Josef Kolář, CSc. Katedra teoretické informatiky, FIT České vysoké učení technické v Praze NP-ÚPLNÉ PROBLÉMY Doc. RNDr. Josef Kolář, CSc. Katedra teoretické informatiky, FIT České vysoké učení technické v Praze BI-GRA, LS 2010/2011, Lekce 13 Evropský sociální fond Praha & EU: Investujeme do

Více

12. Globální metody MI-PAA

12. Globální metody MI-PAA Jan Schmidt 2011 Katedra číslicového návrhu Fakulta informačních technologií České vysoké učení technické v Praze Zimní semestr 2011/12 MI-PAA EVROPSKÝ SOCIÁLNÍ FOND PRAHA & EU: INVESTUJENE DO VAŠÍ BUDOUCNOSTI

Více

TÉMATICKÝ OKRUH Softwarové inženýrství

TÉMATICKÝ OKRUH Softwarové inženýrství TÉMATICKÝ OKRUH Softwarové inženýrství Číslo otázky : 24. Otázka : Implementační fáze. Postupy při specifikaci organizace softwarových komponent pomocí UML. Mapování modelů na struktury programovacího

Více

9. Struktura a vlastnosti plynů

9. Struktura a vlastnosti plynů 9. Struktura a vlastnosti plynů Osnova: 1. Základní pojmy 2. Střední kvadratická rychlost 3. Střední kinetická energie molekuly plynu 4. Stavová rovnice ideálního plynu 5. Jednoduché děje v plynech a)

Více

Paralelní a distribuované výpočty (B4B36PDV)

Paralelní a distribuované výpočty (B4B36PDV) Paralelní a distribuované výpočty (B4B36PDV) Branislav Bošanský, Michal Jakob bosansky@fel.cvut.cz Artificial Intelligence Center Department of Computer Science Faculty of Electrical Engineering Czech

Více

Základy vakuové techniky

Základy vakuové techniky Základy vakuové techniky Střední rychlost plynů Rychlost molekuly v p = (2 k N A ) * (T/M 0 ), N A = 6. 10 23 molekul na mol (Avogadrova konstanta), k = 1,38. 10-23 J/K.. Boltzmannova konstanta, T.. absolutní

Více

Procesy a vlákna (Processes and Threads)

Procesy a vlákna (Processes and Threads) ÚVOD DO OPERAČNÍCH SYSTÉMŮ Ver.1.00 Procesy a vlákna (Processes and Threads) Správa procesů a vláken České vysoké učení technické Fakulta elektrotechnická 2012 Použitá literatura [1] Stallings, W.: Operating

Více

ROVNOVÁHA. 5. Jak by se změnila účinnost fiskální politiky, pokud by spotřeba kromě důchodu závisela i na úrokové sazbě?

ROVNOVÁHA. 5. Jak by se změnila účinnost fiskální politiky, pokud by spotřeba kromě důchodu závisela i na úrokové sazbě? ROVNOVÁHA Zadání 1. Použijte neoklasickou teorii rozdělování k předpovědi efektu následujících událostí na reálnou mzdu a reálnou cenu kapitálu: a) Vlna imigrace zvýší množství pracovníků v zemi. b) Zemětřesení

Více

Pohled do nitra mikroprocesoru Josef Horálek

Pohled do nitra mikroprocesoru Josef Horálek Pohled do nitra mikroprocesoru Josef Horálek Z čeho vycházíme = Vycházíme z Von Neumannovy architektury = Celý počítač se tak skládá z pěti koncepčních bloků: = Operační paměť = Programový řadič = Aritmeticko-logická

Více

Aplikace metody BDDC

Aplikace metody BDDC Aplikace metody BDDC v problémech pružnosti P. Burda, M. Čertíková, E. Neumanová, J. Šístek A. Damašek, J. Novotný FS ČVUT, ÚT AVČR 14.9.2006 / SAMO 06 (FS ČVUT, ÚT AVČR) 14.9.2006 / SAMO 06 1 / 46 Osnova

Více

VÝVOJ ŘÍDICÍCH ALGORITMŮ HYDRAULICKÝCH POHONŮ S VYUŽITÍM SIGNÁLOVÉHO PROCESORU DSPACE

VÝVOJ ŘÍDICÍCH ALGORITMŮ HYDRAULICKÝCH POHONŮ S VYUŽITÍM SIGNÁLOVÉHO PROCESORU DSPACE VÝVOJ ŘÍDICÍCH ALGORITMŮ HYDRAULICKÝCH POHONŮ S VYUŽITÍM SIGNÁLOVÉHO PROCESORU DSPACE Přednáška na semináři CAHP v Praze 4.9.2013 Prof. Ing. Petr Noskievič, CSc. Ing. Miroslav Mahdal, Ph.D. Katedra automatizační

Více

Učební texty k státní bakalářské zkoušce Matematika Základy lineárního programování. študenti MFF 15. augusta 2008

Učební texty k státní bakalářské zkoušce Matematika Základy lineárního programování. študenti MFF 15. augusta 2008 Učební texty k státní bakalářské zkoušce Matematika Základy lineárního programování študenti MFF 15. augusta 2008 1 15 Základy lineárního programování Požadavky Simplexová metoda Věty o dualitě (bez důkazu)

Více

Soustavy lineárních rovnic

Soustavy lineárních rovnic Soustavy lineárních rovnic V této kapitole se budeme zabývat soustavami lineárních diferenciálních rovnic y = a (x)y + a (x)y + + a n (x)y n + f (x) y = a (x)y + a (x)y + + a n (x)y n + f (x). y n = a

Více

Soustavy se spínanými kapacitory - SC. 1. Základní princip:

Soustavy se spínanými kapacitory - SC. 1. Základní princip: Obvody S - popis 1 Soustavy se spínanými kapacitory - S 1. Základní princip: Simulace rezistoru přepínaným kapacitorem viz známý obrázek! (a rovnice) Modifikace základního spínaného obvodu: Obr. 2.1: Zapojení

Více