Princip paralelního řazení vkládáním (menší propadává doprava)

Podobné dokumenty
Vyhledávání v tabulkách

1. Nakreslete všechny kostry následujících grafů: nemá žádnou kostru, roven. roven n,

IAJCE Přednáška č. 12

Aplikovaná informatika. Podklady předmětu Aplikovaná informatika pro akademický rok 2006/2007 Radim Farana. Obsah. Algoritmus

1 POPISNÁ STATISTIKA V PROGRAMU MS EXCEL

STATISTIKA. Statistika se těší pochybnému vyznamenání tím, že je nejvíce nepochopeným vědním oborem. H. Levinson

Deskriptivní statistika 1

Principy počítačů I Taxonomie, organizace s vysokým výkonem

Rozhodovací stromy. Úloha klasifikace objektů do tříd. Top down induction of decision trees (TDIDT) - metoda divide and conquer (rozděl a panuj)

3. Sekvenční obvody. b) Minimalizujte budící funkce pomocí Karnaughovy mapy

Dobývání znalostí. Doc. RNDr. Iveta Mrázová, CSc. Katedra teoretické informatiky Matematicko-fyzikální fakulta Univerzity Karlovy v Praze

přirozený algoritmus seřadí prvky 1,3,2,8,9,7 a prvky 4,5,6 nechává Metody řazení se dělí:

Petr Šedivý Šedivá matematika

P2: Statistické zpracování dat

Tento materiál vznikl díky Operačnímu programu Praha Adaptabilita CZ.2.17/3.1.00/33254

23. Mechanické vlnění

Kapitola 12: Zpracování dotazů. Základní kroky ve zpracování dotazů

1 Základní pojmy a vlastnosti

2 STEJNORODOST BETONU KONSTRUKCE

Parametr populace (populační charakteristika) je číselná charakteristika sledované vlastnosti

Posloupnosti. a a. 5) V aritmetické posloupnosti je dáno: a

1 Trochu o kritériích dělitelnosti

8.2.1 Aritmetická posloupnost

4.2 Elementární statistické zpracování Rozdělení četností

Cvičení 3 - teorie. Teorie pravděpodobnosti vychází ze studia náhodných pokusů.

Pojem času ve finančním rozhodování podniku

M - Posloupnosti VARIACE

8.2.1 Aritmetická posloupnost I

Iterační výpočty projekt č. 2

Pravděpodobnost a aplikovaná statistika

Odhady parametrů základního souboru. Ing. Michal Dorda, Ph.D.

Odhady parametrů polohy a rozptýlení pro často se vyskytující rozdělení dat v laboratoři se vyčíslují podle následujících vztahů:


Číslicové filtry. Použití : Analogové x číslicové filtry : Analogové. Číslicové: Separace signálů Restaurace signálů

Znegujte následující výroky a rozhodněte, jestli platí výrok, nebo jeho negace:

MATICOVÉ HRY MATICOVÝCH HER

Zobrazení čísel v počítači

Matematika 1. Ivana Pultarová Katedra matematiky, Fakulta stavební ČVUT v Praze. středa 10-11:40 posluchárna D Posloupnosti

veličiny má stejný řád jako je řád poslední číslice nejistoty. Nejistotu píšeme obvykle jenom jednou

D = H = 1. člen posloupnosti... a 1 2. člen posloupnosti... a 2 3. člen posloupnosti... a 3... n. člen posloupnosti... a n

1 ROVNOMĚRNOST BETONU KONSTRUKCE


I. Výpočet čisté současné hodnoty upravené

1.3. POLYNOMY. V této kapitole se dozvíte:

6. Posloupnosti a jejich limity, řady

Aritmetická posloupnost, posloupnost rostoucí a klesající Posloupnosti

Matematika 1. Katedra matematiky, Fakulta stavební ČVUT v Praze. středa 10-11:40 posluchárna D / 13. Posloupnosti

Matematická analýza I

Pro statistické šetření si zvolte si statistický soubor např. všichni žáci třídy (několika tříd, školy apod.).

NPRG030 Programování I, 2018/19 1 / :03:07

6. FUNKCE A POSLOUPNOSTI

Sekvenční logické obvody(lso)

DobSort. Úvod do programování. DobSort Implementace 1/3. DobSort Implementace 2/3. DobSort - Příklad. DobSort Implementace 3/3

Statistika. Statistické funkce v tabulkových kalkulátorech MSO Excel a OO.o Calc

PRAVDĚPODOBNOST A STATISTIKA

Prioritní fronta, halda

základním prvkem teorie křivek v počítačové grafice křivky polynomiální n

Tržní ceny odrážejí a zahrnují veškeré informace předpokládá se efektivní trh, pro cenu c t tedy platí c t = c t + ε t.

OKRUŽNÍ A ROZVOZNÍ ÚLOHY: OBCHODNÍ CESTUJÍCÍ. FORMULACE PŘI RESPEKTOVÁNÍ ČASOVÝCH OKEN

2. Znát definici kombinačního čísla a základní vlastnosti kombinačních čísel. Ovládat jednoduché operace s kombinačními čísly.

HYDROMECHANICKÉ PROCESY. Doprava tekutin Čerpadla a kompresory (přednáška) Doc. Ing. Tomáš Jirout, Ph.D.

Geometrická optika. Zákon odrazu a lomu světla

VLASTNOSTI ÚLOH CELOČÍSELNÉHO PROGRAMOVÁNÍ

KABELY. Pro drátové okruhy (za drát se považuje i světlovodné vlákno): metalické kabely optické kabely

Aplikace teorie neuronových sítí

pravděpodobnostn podobnostní jazykový model

1. K o m b i n a t o r i k a

U klasifikace podle minimální vzdálenosti je nutno zvolit:

ARITMETICKÉ POSLOUPNOSTI VYŠŠÍCH ŘÁDŮ

Ústav fyzikálního inženýrství Fakulta strojního inženýrství VUT v Brně GEOMETRICKÁ OPTIKA. Přednáška 10

MATEMATIKA PŘÍKLADY K PŘÍJÍMACÍM ZKOUŠKÁM BAKALÁŘSKÉ STUDIUM MGR. RADMILA STOKLASOVÁ, PH.D.

a) b) c) Radek Mařík

Rekurze a rychlé třídění

STUDIUM MAXWELLOVA ZÁKONA ROZDĚLENÍ RYCHLSOTÍ MOLEKUL POMOCÍ DERIVE 6

PRAVDĚPODOBNOST A STATISTIKA

13 Popisná statistika

Algoritmizace řazení Bubble Sort

(3n + 1) 3n Příklady pro samostatnou práci

8.1.3 Rekurentní zadání posloupnosti I

Regulace frekvence a velikosti napětí Řízení je spojeno s dodávkou a přenosem činného a jalového výkonu v soustavě.

Vícekanálové čekací systémy

Úvod do teorie grafů

Spojitost a limita funkcí jedné reálné proměnné

Statistika je vědní obor zabývající se zkoumáním jevů, které mají hromadný charakter.

PRAVDĚPODOBNOST A STATISTIKA. Náhodná proměnná vybraná rozdělení

jako konstanta nula. Obsahem centrálních limitních vět je tvrzení, že distribuční funkce i=1 X i konvergují za určitých

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

( + ) ( ) ( ) ( ) ( ) Derivace elementárních funkcí II. Předpoklady: Př. 1: Urči derivaci funkce y = x ; n N.

Odhady parametrů 1. Odhady parametrů

Vyšší mocniny. Předpoklady: Doplň místo obdélníčků správné číslo. a) ( 2) 3. = c) ( ) = 1600 = e) ( 25) 2 0,8 0, 64.

Permutace s opakováním

Popisná statistika. Zdeněk Janák 9. prosince 2007

Metody zkoumání závislosti numerických proměnných

odhady parametrů. Jednostranné a oboustranné odhady. Intervalový odhad střední hodnoty, rozptylu, relativní četnosti.

Optické vlastnosti atmosféry, rekonstrukce optického signálu degradovaného průchodem atmosférou

Mocniny. Mocniny, odmocniny, logaritmy, exponenciála. Obecná mocnina. Mocniny. Odmocniny

13. Třídící algoritmy a násobení matic


Analýza a zpracování signálů. 3. Číselné řady, jejich vlastnosti a základní operace, náhodné signály

Asymptotická složitost algoritmů

Transkript:

ricip paralelího řazeí vkládáím (meší propadává doprava) Týde 0 aralelí řazeí. vkládáím. traspozicí lichý - sudý. bitoické. s pravidelými vzorky. přihrádkové 0,,,,,,,,,, krok aralelí řazeí vkládáím (Isertio sort) CU CU CU WIE comig iput? ext IF ext > highest output! highest highest : ext TRUE output! ext očet procesů počet klíčů Řazeí po blocích dat, 0 přijme odešle seřadí 0 přijme spojí odešle přijme odešle seřadí přijme spojí -0 odešle přijme odešle seřadí přijme spojí odešle přijme seřadí odešle C, doba příjmu a a odesláí jedé položky Optimálí rozděleí S q q, doba řazeí q položek 0 > >? M, doba spojeí jedé položky čiosti lze překrýt, ideálě by měly trvat stejě dlouho Spojováí seřazeých posloupostí (merge) Spojováí seřazeých posloupostí (.verze) Koečá Spoj oech si vyšší Vrať ižší ižší koečá Spoj zdola do poloviy Spoj shora do poloviy vyšší koečá

aralelí řazeí lichý-sudý krok 0 0 8 8 8 8 8 8 8 8 sudý idex lichý idex recv ( i ) sed( i- ) sed ( i ) recv( i- ) i : recv ( i- ) i : sed ( i ) sed( i- ) recv( i ) Bitoické poslouposti Jsou vytvořey - ze částí, jedé arůstající, druhé klesající - cyklickým posuvem předchozí poslouposti hodota a 0, a,..., a - a 0, a,..., a - orováím a výměou prvků a i a a i/ bitoické poslouposti získáme polovičí bitoické poslouposti. Využití bitoických posloupostí pro řazeí Bitoický mergesort 8 klíčů it 8 9 8 9 8 9 8 9 Bitoická posloupost porováí a výměa bitoické poslouposti porováí a výměa dvouprvkové poslouposti seřazeá posloupost orováí a výměa přesuuje meší doleva a větší doprava. Rekurzivím postupem se prvky seřadí. 00 00 šabloa 0000 8 8 8 8 9 9 9 9 8 9 9 8 8 9 řádek CU; barevé šipky směřují k CU s vyšším klíčem Bitoický mergesort a hyperkostce [/] INT tmpl: -- biárí šabloa (template) 0 00 krok i 00 Komuikující dvojice: 0... vyšší část do vyššího id,... opačě. 0000 šabloa INT z: z : -- hodoty z:,,..,/ i0 FOR -- šablo pro procesorů INT t,w: -- geerováí šabloy tmpl u0 FOR z tmpl[u]:0 -- počátečí vyulováí t:i w:z -- a astaveí WIE t<- -- pro 8: t0, h0 FOR w tmpl[hw]:-tmpl[h] -- komplemet tmpl[h] t:t w:*w OUTSTRM! tmpl[/-],...,tmpl[],tmpl[0] z : *z

klíče 8 9 W řadící síť s moduly merge/split i0 i CU čára jedé i z z barvy z 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 step m seřazeé klíče 8 9 Bitoické spojeí seřazeých sekvecí 0 0 0 0 0 00 šabloa Výkoost bitoického mergesortu (EREW) Každý CU: sekvečí Quicksort za kroků Spojeí / položek ( )- krát ( ) za kroků S(, ), ( ) S K E K pro K k θ( ) slabá škálovatelost Rychlejší bitoický mergesort Každý CU: sekvečí Quicksort za kroků Spojeí je/ položek ( )- krát za ( ) kroků; S(, ) E S ( ) K ( )( / ), ( )( / ) K pro ( )( / ) θ(( / ) K škálovatelost o ěco lepší k ) Srováí řadících algoritmů a EREW RAM 00 000 000,, Naiví Bitoický Rychlejší bitoický S E % S E % S E %,9 9,9 9 00, 8, 8,8 9 8,, 89 8, 0 8 0,,, 8, 0 0 0 9 aralelí řazeí pomocí vzorků (SRS) SRS arallel Sortig with Regular Samplig Základí myšleka: Rozděl do segmetů stejé velikosti. Seřaď segmety (apř. použitím u). Obor hodot dat rozděl a itervalů (přihrádek). ech si je jedu přihrádku a z ostatích přihrádek odešli příslušým procesorům (AAS). aralelě spoj ze své a došlých seřazeých přihrádek Klíčový algoritmus je -cesté spojováí. Časová složitost O(/ ()) for >. Údajě ejrychlejší uiverzálí paralelí řazeí.

. Rozděl do segmetů. aralelě seřaď datové segmety. Ze seřazeých datových segmetů vezmi vzorky ve stejých rozestupech. Seřaď vzorky dat 8 9 9 0 8 0 8 9 8 9 0 9 0 8 9 9 0 8 8 9 0 8 9 9 Sekvečí složitost: O() 8 9 9 0 8 0 8 9 8 9 0 9 sekvečíl sekvečíl sekvečíl Sekvečí složitost: O( (/)) 0 8 9 9 0 8 8 9 0 8 9 9 Sekvečí složitost: O( ) Sekvečí složitost: O( ( )) 0 9 0 9 0 9 vzorků sekvečí 0 0 0 9 9 9. Ze seřazeých vzorků dat vyber stejě vzdáleé hraičí prvky. Rozčleň segmety dat do přihrádek. Vypočti velikosti výsledých přihrádek 8. Stejolehlé přihrádky vždy spojí jede procesor vzorky 0 0 0 9 9 9 8 výsledek Sekvečí složitost: O() O( ) 9 raičí (pivotí) prvky 0 8 9 9 0 8 8 9 0 8 9 9 0 8 9 9 0 8 8 9 0 8 9 9 9 9 9 Sekvečí složitost: O( (/)) sekvečí sekvečíl -cestý merge -cestý merge O( ()) ebo O() 0 0 0 sekvečí -cestý merge 8 8 Celková sekvečí a paralelí složitost Sekvečí a paralelí časová složitost -pokrač. Krok : O() - Rozděleí dat do segmetů. Krok : O( (/)) - Seřazeí datových segmetů. Krok: O( ) - Vzorkováí seřazeých datových segmetů. Krok: O( ( )) - Seřazeí vzorků dat. Krok : O() - Volba pivotů ze seřazeých vzorků. Krok: O( (/)) - Rozčleěí seřaz.segmetů do přihrádek. Krok: O( ) - Výpočet velikosti přihrádek. Krok8: O( ()) - Spojeí dat do výsledé kofigurace. O() verze by byla jedodušší. Dva domiatí čley : pokud <<, téměř celý čas se stráví v krocích a 8: Krok: O( (/)) - Řazeí datových segmetů. Krok8: O( () - Spojeí přihrádek dat. ři pevém a, sekv.složitost O( ()). Oba extrémy (, ) dávají O( ()). Celkový efekt závisí a ásobící kostatě. aralelí složitost O( ) O( ) O( )

aralelí řazeí s přihrádkami (bucket sort) Miimálí kostra grafu (Mi. Spaig Tree) Opačé pořadí akcí ež u SRS. Data se rozdělí procesorům po itervalech hodot, teprve pak lokálí řazeí. Základí myšleka: Rozděl po segmetech stejé velikosti procesorům. Obor hodot dat rozděl a itervalů. Každý procesor: roztřídí svoje do přihrádek (itervalů), echá si je jedu přihrádku a z ostatích přihrádek odešle příslušým procesorům (AAS). seřadí ve své přihrádce spolu s daty od kolegů. řihrádky budou obsahovat stejý počet klíčů je při rovoměrém rozložeí hodot výchozích dat. Je dáeorietovaý graf G, hray opatřey vahami. Kostra grafu G je podgraf ve tvaru stromu obsahující všechy uzly. Miimálí kostra je kostra s ejmeším součtem vah svých hra. Sekvečí složitost: O( ) pro uzlů. Uzly grafu jsou rozděley mezi procesory, MST(0) root ; for (i;i<;i) { # tolik kroků, kolik je uzlů (bez src) Všechy procesory: ajdi uzel ejbližší k MST(i-) a zapiš délku cesty do sdíleé paměti; Všichi redukují operací miimum předchozí ejkratší cesty a jedo globálí miimum za kroků; #všichi je budou zát ajedou cpu[0]: aktualizuj MST(i); # zapíše do MST ve sdíleé paměti právě # alezeý uzel ejbližší k MST(i-) barrier(id); } Miimálí kostra grafu (MST) - pokrač. MST() MST() MST() 0 8 MST() MST() MST()