paralelné algoritmy, cast c. 2mraz/paralg/paralg2-10.pdfjednoduchšie podúlohy, tie sa riešia...
TRANSCRIPT
![Page 1: Paralelné algoritmy, cast c. 2mraz/paralg/ParAlg2-10.pdfjednoduchšie podúlohy, tie sa riešia paralelne a potom sa z riešení podúloh skladá riešenie celej úlohy. práca v](https://reader033.vdocuments.site/reader033/viewer/2022041613/5e39233e4e371f031559e329/html5/thumbnails/1.jpg)
Paralelné algoritmy, cast’ c. 2
František Mráz
Kabinet software a výuky informatiky, MFF UK, Praha
Paralelné algoritmy, 2009/2010
František Mráz (KSVI MFF UK) Paralelné algoritmy, cast’ c. 2 Paralelné algoritmy, 2009/2010 1 / 17
![Page 2: Paralelné algoritmy, cast c. 2mraz/paralg/ParAlg2-10.pdfjednoduchšie podúlohy, tie sa riešia paralelne a potom sa z riešení podúloh skladá riešenie celej úlohy. práca v](https://reader033.vdocuments.site/reader033/viewer/2022041613/5e39233e4e371f031559e329/html5/thumbnails/2.jpg)
Obsah
1 Paralelné algoritmy pre vybrané funkcie
František Mráz (KSVI MFF UK) Paralelné algoritmy, cast’ c. 2 Paralelné algoritmy, 2009/2010 2 / 17
![Page 3: Paralelné algoritmy, cast c. 2mraz/paralg/ParAlg2-10.pdfjednoduchšie podúlohy, tie sa riešia paralelne a potom sa z riešení podúloh skladá riešenie celej úlohy. práca v](https://reader033.vdocuments.site/reader033/viewer/2022041613/5e39233e4e371f031559e329/html5/thumbnails/3.jpg)
Paralelné algoritmy pre vybrané funkcie
ÚvodCiele:
vzájomné simulácie paralelných a sekvencných modelov výpoctovpoužitie základných princípov návrhu paralelných algoritmov:rozdel’ a panuj – známe zo sekvencných algoritmov; úloha sa rozdelí na
jednoduchšie podúlohy, tie sa riešia paralelne a potom sa zriešení podúloh skladá riešenie celej úlohy.
práca v tímoch – každej variante riešenia je pridelený jeden tím, ktorý overuje,ci jeho riešenie odpovedá vstupom. Práve jeden tím zistí, že jehoriešenie zodpovedá vstupu a vydá svoje riešenie ako výsledok.
Dohody:obmedzená sada inštrukcií: +, −, div 2, bx2yc (aritmetické posuny)pre jednoduchost’ budeme predpokladat’, že vstupné císla sú nezáporné celécísla
František Mráz (KSVI MFF UK) Paralelné algoritmy, cast’ c. 2 Paralelné algoritmy, 2009/2010 3 / 17
![Page 4: Paralelné algoritmy, cast c. 2mraz/paralg/ParAlg2-10.pdfjednoduchšie podúlohy, tie sa riešia paralelne a potom sa z riešení podúloh skladá riešenie celej úlohy. práca v](https://reader033.vdocuments.site/reader033/viewer/2022041613/5e39233e4e371f031559e329/html5/thumbnails/4.jpg)
Paralelné algoritmy pre vybrané funkcie
ÚvodCiele:
vzájomné simulácie paralelných a sekvencných modelov výpoctovpoužitie základných princípov návrhu paralelných algoritmov:rozdel’ a panuj – známe zo sekvencných algoritmov; úloha sa rozdelí na
jednoduchšie podúlohy, tie sa riešia paralelne a potom sa zriešení podúloh skladá riešenie celej úlohy.
práca v tímoch – každej variante riešenia je pridelený jeden tím, ktorý overuje,ci jeho riešenie odpovedá vstupom. Práve jeden tím zistí, že jehoriešenie zodpovedá vstupu a vydá svoje riešenie ako výsledok.
Dohody:obmedzená sada inštrukcií: +, −, div 2, bx2yc (aritmetické posuny)pre jednoduchost’ budeme predpokladat’, že vstupné císla sú nezáporné celécísla
František Mráz (KSVI MFF UK) Paralelné algoritmy, cast’ c. 2 Paralelné algoritmy, 2009/2010 3 / 17
![Page 5: Paralelné algoritmy, cast c. 2mraz/paralg/ParAlg2-10.pdfjednoduchšie podúlohy, tie sa riešia paralelne a potom sa z riešení podúloh skladá riešenie celej úlohy. práca v](https://reader033.vdocuments.site/reader033/viewer/2022041613/5e39233e4e371f031559e329/html5/thumbnails/5.jpg)
Paralelné algoritmy pre vybrané funkcie
ÚvodCiele:
vzájomné simulácie paralelných a sekvencných modelov výpoctovpoužitie základných princípov návrhu paralelných algoritmov:rozdel’ a panuj – známe zo sekvencných algoritmov; úloha sa rozdelí na
jednoduchšie podúlohy, tie sa riešia paralelne a potom sa zriešení podúloh skladá riešenie celej úlohy.
práca v tímoch – každej variante riešenia je pridelený jeden tím, ktorý overuje,ci jeho riešenie odpovedá vstupom. Práve jeden tím zistí, že jehoriešenie zodpovedá vstupu a vydá svoje riešenie ako výsledok.
Dohody:obmedzená sada inštrukcií: +, −, div 2, bx2yc (aritmetické posuny)pre jednoduchost’ budeme predpokladat’, že vstupné císla sú nezáporné celécísla
František Mráz (KSVI MFF UK) Paralelné algoritmy, cast’ c. 2 Paralelné algoritmy, 2009/2010 3 / 17
![Page 6: Paralelné algoritmy, cast c. 2mraz/paralg/ParAlg2-10.pdfjednoduchšie podúlohy, tie sa riešia paralelne a potom sa z riešení podúloh skladá riešenie celej úlohy. práca v](https://reader033.vdocuments.site/reader033/viewer/2022041613/5e39233e4e371f031559e329/html5/thumbnails/6.jpg)
Paralelné algoritmy pre vybrané funkcie
ÚvodCiele:
vzájomné simulácie paralelných a sekvencných modelov výpoctovpoužitie základných princípov návrhu paralelných algoritmov:rozdel’ a panuj – známe zo sekvencných algoritmov; úloha sa rozdelí na
jednoduchšie podúlohy, tie sa riešia paralelne a potom sa zriešení podúloh skladá riešenie celej úlohy.
práca v tímoch – každej variante riešenia je pridelený jeden tím, ktorý overuje,ci jeho riešenie odpovedá vstupom. Práve jeden tím zistí, že jehoriešenie zodpovedá vstupu a vydá svoje riešenie ako výsledok.
Dohody:obmedzená sada inštrukcií: +, −, div 2, bx2yc (aritmetické posuny)pre jednoduchost’ budeme predpokladat’, že vstupné císla sú nezáporné celécísla
František Mráz (KSVI MFF UK) Paralelné algoritmy, cast’ c. 2 Paralelné algoritmy, 2009/2010 3 / 17
![Page 7: Paralelné algoritmy, cast c. 2mraz/paralg/ParAlg2-10.pdfjednoduchšie podúlohy, tie sa riešia paralelne a potom sa z riešení podúloh skladá riešenie celej úlohy. práca v](https://reader033.vdocuments.site/reader033/viewer/2022041613/5e39233e4e371f031559e329/html5/thumbnails/7.jpg)
Paralelné algoritmy pre vybrané funkcie
ÚvodCiele:
vzájomné simulácie paralelných a sekvencných modelov výpoctovpoužitie základných princípov návrhu paralelných algoritmov:rozdel’ a panuj – známe zo sekvencných algoritmov; úloha sa rozdelí na
jednoduchšie podúlohy, tie sa riešia paralelne a potom sa zriešení podúloh skladá riešenie celej úlohy.
práca v tímoch – každej variante riešenia je pridelený jeden tím, ktorý overuje,ci jeho riešenie odpovedá vstupom. Práve jeden tím zistí, že jehoriešenie zodpovedá vstupu a vydá svoje riešenie ako výsledok.
Dohody:obmedzená sada inštrukcií: +, −, div 2, bx2yc (aritmetické posuny)pre jednoduchost’ budeme predpokladat’, že vstupné císla sú nezáporné celécísla
František Mráz (KSVI MFF UK) Paralelné algoritmy, cast’ c. 2 Paralelné algoritmy, 2009/2010 3 / 17
![Page 8: Paralelné algoritmy, cast c. 2mraz/paralg/ParAlg2-10.pdfjednoduchšie podúlohy, tie sa riešia paralelne a potom sa z riešení podúloh skladá riešenie celej úlohy. práca v](https://reader033.vdocuments.site/reader033/viewer/2022041613/5e39233e4e371f031559e329/html5/thumbnails/8.jpg)
Paralelné algoritmy pre vybrané funkcie
ÚvodCiele:
vzájomné simulácie paralelných a sekvencných modelov výpoctovpoužitie základných princípov návrhu paralelných algoritmov:rozdel’ a panuj – známe zo sekvencných algoritmov; úloha sa rozdelí na
jednoduchšie podúlohy, tie sa riešia paralelne a potom sa zriešení podúloh skladá riešenie celej úlohy.
práca v tímoch – každej variante riešenia je pridelený jeden tím, ktorý overuje,ci jeho riešenie odpovedá vstupom. Práve jeden tím zistí, že jehoriešenie zodpovedá vstupu a vydá svoje riešenie ako výsledok.
Dohody:obmedzená sada inštrukcií: +, −, div 2, bx2yc (aritmetické posuny)pre jednoduchost’ budeme predpokladat’, že vstupné císla sú nezáporné celécísla
František Mráz (KSVI MFF UK) Paralelné algoritmy, cast’ c. 2 Paralelné algoritmy, 2009/2010 3 / 17
![Page 9: Paralelné algoritmy, cast c. 2mraz/paralg/ParAlg2-10.pdfjednoduchšie podúlohy, tie sa riešia paralelne a potom sa z riešení podúloh skladá riešenie celej úlohy. práca v](https://reader033.vdocuments.site/reader033/viewer/2022041613/5e39233e4e371f031559e329/html5/thumbnails/9.jpg)
Paralelné algoritmy pre vybrané funkcie
Pocítanie funkcií blog nc a dlog ne
vstup: císlo nstací blog nc procesorovjednoclenné tímy – i-ty tím (procesor) overuje, ci i = blog nc:
v :=⌊ n
2i
⌋if (v > 0) and (
⌊ v2
⌋= 0) then r1 := i
pre výpocet dlog ne pridáme: ak n = 2i tak výsledok i , inak i + 1.
Pocet proc. Cas Šírka slova Modelblog nc O(1) O(log n) CREW
František Mráz (KSVI MFF UK) Paralelné algoritmy, cast’ c. 2 Paralelné algoritmy, 2009/2010 4 / 17
![Page 10: Paralelné algoritmy, cast c. 2mraz/paralg/ParAlg2-10.pdfjednoduchšie podúlohy, tie sa riešia paralelne a potom sa z riešení podúloh skladá riešenie celej úlohy. práca v](https://reader033.vdocuments.site/reader033/viewer/2022041613/5e39233e4e371f031559e329/html5/thumbnails/10.jpg)
Paralelné algoritmy pre vybrané funkcie
Pocítanie funkcií blog nc a dlog ne
vstup: císlo nstací blog nc procesorovjednoclenné tímy – i-ty tím (procesor) overuje, ci i = blog nc:
v :=⌊ n
2i
⌋if (v > 0) and (
⌊ v2
⌋= 0) then r1 := i
pre výpocet dlog ne pridáme: ak n = 2i tak výsledok i , inak i + 1.
Pocet proc. Cas Šírka slova Modelblog nc O(1) O(log n) CREW
František Mráz (KSVI MFF UK) Paralelné algoritmy, cast’ c. 2 Paralelné algoritmy, 2009/2010 4 / 17
![Page 11: Paralelné algoritmy, cast c. 2mraz/paralg/ParAlg2-10.pdfjednoduchšie podúlohy, tie sa riešia paralelne a potom sa z riešení podúloh skladá riešenie celej úlohy. práca v](https://reader033.vdocuments.site/reader033/viewer/2022041613/5e39233e4e371f031559e329/html5/thumbnails/11.jpg)
Paralelné algoritmy pre vybrané funkcie
Pocítanie funkcií blog nc a dlog ne
vstup: císlo nstací blog nc procesorovjednoclenné tímy – i-ty tím (procesor) overuje, ci i = blog nc:
v :=⌊ n
2i
⌋if (v > 0) and (
⌊ v2
⌋= 0) then r1 := i
pre výpocet dlog ne pridáme: ak n = 2i tak výsledok i , inak i + 1.
Pocet proc. Cas Šírka slova Modelblog nc O(1) O(log n) CREW
František Mráz (KSVI MFF UK) Paralelné algoritmy, cast’ c. 2 Paralelné algoritmy, 2009/2010 4 / 17
![Page 12: Paralelné algoritmy, cast c. 2mraz/paralg/ParAlg2-10.pdfjednoduchšie podúlohy, tie sa riešia paralelne a potom sa z riešení podúloh skladá riešenie celej úlohy. práca v](https://reader033.vdocuments.site/reader033/viewer/2022041613/5e39233e4e371f031559e329/html5/thumbnails/12.jpg)
Paralelné algoritmy pre vybrané funkcie
Pocítanie funkcií blog nc a dlog ne
vstup: císlo nstací blog nc procesorovjednoclenné tímy – i-ty tím (procesor) overuje, ci i = blog nc:
v :=⌊ n
2i
⌋if (v > 0) and (
⌊ v2
⌋= 0) then r1 := i
pre výpocet dlog ne pridáme: ak n = 2i tak výsledok i , inak i + 1.
Pocet proc. Cas Šírka slova Modelblog nc O(1) O(log n) CREW
František Mráz (KSVI MFF UK) Paralelné algoritmy, cast’ c. 2 Paralelné algoritmy, 2009/2010 4 / 17
![Page 13: Paralelné algoritmy, cast c. 2mraz/paralg/ParAlg2-10.pdfjednoduchšie podúlohy, tie sa riešia paralelne a potom sa z riešení podúloh skladá riešenie celej úlohy. práca v](https://reader033.vdocuments.site/reader033/viewer/2022041613/5e39233e4e371f031559e329/html5/thumbnails/13.jpg)
Paralelné algoritmy pre vybrané funkcie
Pocítanie funkcií blog nc a dlog ne
vstup: císlo nstací blog nc procesorovjednoclenné tímy – i-ty tím (procesor) overuje, ci i = blog nc:
v :=⌊ n
2i
⌋if (v > 0) and (
⌊ v2
⌋= 0) then r1 := i
pre výpocet dlog ne pridáme: ak n = 2i tak výsledok i , inak i + 1.
Pocet proc. Cas Šírka slova Modelblog nc O(1) O(log n) CREW
František Mráz (KSVI MFF UK) Paralelné algoritmy, cast’ c. 2 Paralelné algoritmy, 2009/2010 4 / 17
![Page 14: Paralelné algoritmy, cast c. 2mraz/paralg/ParAlg2-10.pdfjednoduchšie podúlohy, tie sa riešia paralelne a potom sa z riešení podúloh skladá riešenie celej úlohy. práca v](https://reader033.vdocuments.site/reader033/viewer/2022041613/5e39233e4e371f031559e329/html5/thumbnails/14.jpg)
Paralelné algoritmy pre vybrané funkcie
Pocítanie maxima z n císel
Bez ujmy na obecnosti môžeme predpokladat’, že n je mocnina 2(viz. vyššie). Vstupy sú x0 v r1, . . . , xn−1 v rn.Spocítame log n a n2 (aritm. posunmi); výpoctu sa zúcastniaprocesory s PID< n2.Každý procesor rozdelí svoje PID na dve (log n)-bitové císla i , j .i ∈ {0, . . . ,n − 1} je císlo tímu, j ∈ {0, . . . ,n − 1} je císlo clenatímu.i-ty tím overuje, ci je xi maximum a bude komunikovat’prostredníctvom registra rn+1+i ; (i ,0) je manažér
1 if j = 0 then rn+1+i := 02 if (xi < xj) then rn+1+i := 13 if (j = 0) and (rn+1+i = 0) then r1 := r i+1
Pocet proc. Cas Šírka slova Modeln2 O(1) min. 2 log n COMMON
František Mráz (KSVI MFF UK) Paralelné algoritmy, cast’ c. 2 Paralelné algoritmy, 2009/2010 5 / 17
![Page 15: Paralelné algoritmy, cast c. 2mraz/paralg/ParAlg2-10.pdfjednoduchšie podúlohy, tie sa riešia paralelne a potom sa z riešení podúloh skladá riešenie celej úlohy. práca v](https://reader033.vdocuments.site/reader033/viewer/2022041613/5e39233e4e371f031559e329/html5/thumbnails/15.jpg)
Paralelné algoritmy pre vybrané funkcie
Pocítanie maxima z n císel
Bez ujmy na obecnosti môžeme predpokladat’, že n je mocnina 2(viz. vyššie). Vstupy sú x0 v r1, . . . , xn−1 v rn.Spocítame log n a n2 (aritm. posunmi); výpoctu sa zúcastniaprocesory s PID< n2.Každý procesor rozdelí svoje PID na dve (log n)-bitové císla i , j .i ∈ {0, . . . ,n − 1} je císlo tímu, j ∈ {0, . . . ,n − 1} je císlo clenatímu.i-ty tím overuje, ci je xi maximum a bude komunikovat’prostredníctvom registra rn+1+i ; (i ,0) je manažér
1 if j = 0 then rn+1+i := 02 if (xi < xj) then rn+1+i := 13 if (j = 0) and (rn+1+i = 0) then r1 := r i+1
Pocet proc. Cas Šírka slova Modeln2 O(1) min. 2 log n COMMON
František Mráz (KSVI MFF UK) Paralelné algoritmy, cast’ c. 2 Paralelné algoritmy, 2009/2010 5 / 17
![Page 16: Paralelné algoritmy, cast c. 2mraz/paralg/ParAlg2-10.pdfjednoduchšie podúlohy, tie sa riešia paralelne a potom sa z riešení podúloh skladá riešenie celej úlohy. práca v](https://reader033.vdocuments.site/reader033/viewer/2022041613/5e39233e4e371f031559e329/html5/thumbnails/16.jpg)
Paralelné algoritmy pre vybrané funkcie
Pocítanie maxima z n císel
Bez ujmy na obecnosti môžeme predpokladat’, že n je mocnina 2(viz. vyššie). Vstupy sú x0 v r1, . . . , xn−1 v rn.Spocítame log n a n2 (aritm. posunmi); výpoctu sa zúcastniaprocesory s PID< n2.Každý procesor rozdelí svoje PID na dve (log n)-bitové císla i , j .i ∈ {0, . . . ,n − 1} je císlo tímu, j ∈ {0, . . . ,n − 1} je císlo clenatímu.i-ty tím overuje, ci je xi maximum a bude komunikovat’prostredníctvom registra rn+1+i ; (i ,0) je manažér
1 if j = 0 then rn+1+i := 02 if (xi < xj) then rn+1+i := 13 if (j = 0) and (rn+1+i = 0) then r1 := r i+1
Pocet proc. Cas Šírka slova Modeln2 O(1) min. 2 log n COMMON
František Mráz (KSVI MFF UK) Paralelné algoritmy, cast’ c. 2 Paralelné algoritmy, 2009/2010 5 / 17
![Page 17: Paralelné algoritmy, cast c. 2mraz/paralg/ParAlg2-10.pdfjednoduchšie podúlohy, tie sa riešia paralelne a potom sa z riešení podúloh skladá riešenie celej úlohy. práca v](https://reader033.vdocuments.site/reader033/viewer/2022041613/5e39233e4e371f031559e329/html5/thumbnails/17.jpg)
Paralelné algoritmy pre vybrané funkcie
Pocítanie maxima z n císel
Bez ujmy na obecnosti môžeme predpokladat’, že n je mocnina 2(viz. vyššie). Vstupy sú x0 v r1, . . . , xn−1 v rn.Spocítame log n a n2 (aritm. posunmi); výpoctu sa zúcastniaprocesory s PID< n2.Každý procesor rozdelí svoje PID na dve (log n)-bitové císla i , j .i ∈ {0, . . . ,n − 1} je císlo tímu, j ∈ {0, . . . ,n − 1} je císlo clenatímu.i-ty tím overuje, ci je xi maximum a bude komunikovat’prostredníctvom registra rn+1+i ; (i ,0) je manažér
1 if j = 0 then rn+1+i := 02 if (xi < xj) then rn+1+i := 13 if (j = 0) and (rn+1+i = 0) then r1 := r i+1
Pocet proc. Cas Šírka slova Modeln2 O(1) min. 2 log n COMMON
František Mráz (KSVI MFF UK) Paralelné algoritmy, cast’ c. 2 Paralelné algoritmy, 2009/2010 5 / 17
![Page 18: Paralelné algoritmy, cast c. 2mraz/paralg/ParAlg2-10.pdfjednoduchšie podúlohy, tie sa riešia paralelne a potom sa z riešení podúloh skladá riešenie celej úlohy. práca v](https://reader033.vdocuments.site/reader033/viewer/2022041613/5e39233e4e371f031559e329/html5/thumbnails/18.jpg)
Paralelné algoritmy pre vybrané funkcie
Pocítanie maxima z n císel
Bez ujmy na obecnosti môžeme predpokladat’, že n je mocnina 2(viz. vyššie). Vstupy sú x0 v r1, . . . , xn−1 v rn.Spocítame log n a n2 (aritm. posunmi); výpoctu sa zúcastniaprocesory s PID< n2.Každý procesor rozdelí svoje PID na dve (log n)-bitové císla i , j .i ∈ {0, . . . ,n − 1} je císlo tímu, j ∈ {0, . . . ,n − 1} je císlo clenatímu.i-ty tím overuje, ci je xi maximum a bude komunikovat’prostredníctvom registra rn+1+i ; (i ,0) je manažér
1 if j = 0 then rn+1+i := 02 if (xi < xj) then rn+1+i := 13 if (j = 0) and (rn+1+i = 0) then r1 := r i+1
Pocet proc. Cas Šírka slova Modeln2 O(1) min. 2 log n COMMON
František Mráz (KSVI MFF UK) Paralelné algoritmy, cast’ c. 2 Paralelné algoritmy, 2009/2010 5 / 17
![Page 19: Paralelné algoritmy, cast c. 2mraz/paralg/ParAlg2-10.pdfjednoduchšie podúlohy, tie sa riešia paralelne a potom sa z riešení podúloh skladá riešenie celej úlohy. práca v](https://reader033.vdocuments.site/reader033/viewer/2022041613/5e39233e4e371f031559e329/html5/thumbnails/19.jpg)
Paralelné algoritmy pre vybrané funkcie
Pocítanie maxima z n císel
Bez ujmy na obecnosti môžeme predpokladat’, že n je mocnina 2(viz. vyššie). Vstupy sú x0 v r1, . . . , xn−1 v rn.Spocítame log n a n2 (aritm. posunmi); výpoctu sa zúcastniaprocesory s PID< n2.Každý procesor rozdelí svoje PID na dve (log n)-bitové císla i , j .i ∈ {0, . . . ,n − 1} je císlo tímu, j ∈ {0, . . . ,n − 1} je císlo clenatímu.i-ty tím overuje, ci je xi maximum a bude komunikovat’prostredníctvom registra rn+1+i ; (i ,0) je manažér
1 if j = 0 then rn+1+i := 02 if (xi < xj) then rn+1+i := 13 if (j = 0) and (rn+1+i = 0) then r1 := r i+1
Pocet proc. Cas Šírka slova Modeln2 O(1) min. 2 log n COMMON
František Mráz (KSVI MFF UK) Paralelné algoritmy, cast’ c. 2 Paralelné algoritmy, 2009/2010 5 / 17
![Page 20: Paralelné algoritmy, cast c. 2mraz/paralg/ParAlg2-10.pdfjednoduchšie podúlohy, tie sa riešia paralelne a potom sa z riešení podúloh skladá riešenie celej úlohy. práca v](https://reader033.vdocuments.site/reader033/viewer/2022041613/5e39233e4e371f031559e329/html5/thumbnails/20.jpg)
Paralelné algoritmy pre vybrané funkcie
Pocítanie maxima z n císel
Bez ujmy na obecnosti môžeme predpokladat’, že n je mocnina 2(viz. vyššie). Vstupy sú x0 v r1, . . . , xn−1 v rn.Spocítame log n a n2 (aritm. posunmi); výpoctu sa zúcastniaprocesory s PID< n2.Každý procesor rozdelí svoje PID na dve (log n)-bitové císla i , j .i ∈ {0, . . . ,n − 1} je císlo tímu, j ∈ {0, . . . ,n − 1} je císlo clenatímu.i-ty tím overuje, ci je xi maximum a bude komunikovat’prostredníctvom registra rn+1+i ; (i ,0) je manažér
1 if j = 0 then rn+1+i := 02 if (xi < xj) then rn+1+i := 13 if (j = 0) and (rn+1+i = 0) then r1 := r i+1
Pocet proc. Cas Šírka slova Modeln2 O(1) min. 2 log n COMMON
František Mráz (KSVI MFF UK) Paralelné algoritmy, cast’ c. 2 Paralelné algoritmy, 2009/2010 5 / 17
![Page 21: Paralelné algoritmy, cast c. 2mraz/paralg/ParAlg2-10.pdfjednoduchšie podúlohy, tie sa riešia paralelne a potom sa z riešení podúloh skladá riešenie celej úlohy. práca v](https://reader033.vdocuments.site/reader033/viewer/2022041613/5e39233e4e371f031559e329/html5/thumbnails/21.jpg)
Paralelné algoritmy pre vybrané funkcie
Pocítanie maxima z n císel
Bez ujmy na obecnosti môžeme predpokladat’, že n je mocnina 2(viz. vyššie). Vstupy sú x0 v r1, . . . , xn−1 v rn.Spocítame log n a n2 (aritm. posunmi); výpoctu sa zúcastniaprocesory s PID< n2.Každý procesor rozdelí svoje PID na dve (log n)-bitové císla i , j .i ∈ {0, . . . ,n − 1} je císlo tímu, j ∈ {0, . . . ,n − 1} je císlo clenatímu.i-ty tím overuje, ci je xi maximum a bude komunikovat’prostredníctvom registra rn+1+i ; (i ,0) je manažér
1 if j = 0 then rn+1+i := 02 if (xi < xj) then rn+1+i := 13 if (j = 0) and (rn+1+i = 0) then r1 := r i+1
Pocet proc. Cas Šírka slova Modeln2 O(1) min. 2 log n COMMON
František Mráz (KSVI MFF UK) Paralelné algoritmy, cast’ c. 2 Paralelné algoritmy, 2009/2010 5 / 17
![Page 22: Paralelné algoritmy, cast c. 2mraz/paralg/ParAlg2-10.pdfjednoduchšie podúlohy, tie sa riešia paralelne a potom sa z riešení podúloh skladá riešenie celej úlohy. práca v](https://reader033.vdocuments.site/reader033/viewer/2022041613/5e39233e4e371f031559e329/html5/thumbnails/22.jpg)
Paralelné algoritmy pre vybrané funkcie
Scítanie n b-bitových císel
predpokladajme, že n je mocnicna 2 a vstupné císla x0, . . . , xn sú kladnésúcet n b-bitových císel nebude mat’ viac než O(b + log n) bitov – totocíslo bude potrebovat’ každý procesor:
log n viz alg. vyššieb spocítame max. a použijeme hornú celú cast’
b + log n zaokrúhlime na najbližšiu vyššiu alebo rovnú mocninu 22n(b+log n) tímov po n procesoroch; procesor interpretuje svoje PID ako ncísel y0, . . . , yn−1 s b + log n bitmi a císlo j s log n bitmiyn−1 yn−2 . . . y0 j
každý procesor extrahuje z PID svoje císlo v tíme j , 0-tý clen tímuextrahuje y0, j-ty (j > 0) clen tímu extrahuje yj a yj−1. Stacia na to posunyo i(b + log n) bitov. Vel’kost’ posunu je i × mocnicna 2⇒ v konštantnomcase.
1 0-tý clen tímu kontroluje ci y0 = x02 j-ty clen tímu kontroluje, ci yj = yj−1 + xj
Procesory, ktoré zistia nerovnost’, to oznámia manažérovi(prostredníctvom komunikacného registra)
František Mráz (KSVI MFF UK) Paralelné algoritmy, cast’ c. 2 Paralelné algoritmy, 2009/2010 6 / 17
![Page 23: Paralelné algoritmy, cast c. 2mraz/paralg/ParAlg2-10.pdfjednoduchšie podúlohy, tie sa riešia paralelne a potom sa z riešení podúloh skladá riešenie celej úlohy. práca v](https://reader033.vdocuments.site/reader033/viewer/2022041613/5e39233e4e371f031559e329/html5/thumbnails/23.jpg)
Paralelné algoritmy pre vybrané funkcie
Scítanie n b-bitových císel
predpokladajme, že n je mocnicna 2 a vstupné císla x0, . . . , xn sú kladnésúcet n b-bitových císel nebude mat’ viac než O(b + log n) bitov – totocíslo bude potrebovat’ každý procesor:
log n viz alg. vyššieb spocítame max. a použijeme hornú celú cast’
b + log n zaokrúhlime na najbližšiu vyššiu alebo rovnú mocninu 22n(b+log n) tímov po n procesoroch; procesor interpretuje svoje PID ako ncísel y0, . . . , yn−1 s b + log n bitmi a císlo j s log n bitmiyn−1 yn−2 . . . y0 j
každý procesor extrahuje z PID svoje císlo v tíme j , 0-tý clen tímuextrahuje y0, j-ty (j > 0) clen tímu extrahuje yj a yj−1. Stacia na to posunyo i(b + log n) bitov. Vel’kost’ posunu je i × mocnicna 2⇒ v konštantnomcase.
1 0-tý clen tímu kontroluje ci y0 = x02 j-ty clen tímu kontroluje, ci yj = yj−1 + xj
Procesory, ktoré zistia nerovnost’, to oznámia manažérovi(prostredníctvom komunikacného registra)
František Mráz (KSVI MFF UK) Paralelné algoritmy, cast’ c. 2 Paralelné algoritmy, 2009/2010 6 / 17
![Page 24: Paralelné algoritmy, cast c. 2mraz/paralg/ParAlg2-10.pdfjednoduchšie podúlohy, tie sa riešia paralelne a potom sa z riešení podúloh skladá riešenie celej úlohy. práca v](https://reader033.vdocuments.site/reader033/viewer/2022041613/5e39233e4e371f031559e329/html5/thumbnails/24.jpg)
Paralelné algoritmy pre vybrané funkcie
Scítanie n b-bitových císel
predpokladajme, že n je mocnicna 2 a vstupné císla x0, . . . , xn sú kladnésúcet n b-bitových císel nebude mat’ viac než O(b + log n) bitov – totocíslo bude potrebovat’ každý procesor:
log n viz alg. vyššieb spocítame max. a použijeme hornú celú cast’
b + log n zaokrúhlime na najbližšiu vyššiu alebo rovnú mocninu 22n(b+log n) tímov po n procesoroch; procesor interpretuje svoje PID ako ncísel y0, . . . , yn−1 s b + log n bitmi a císlo j s log n bitmiyn−1 yn−2 . . . y0 j
každý procesor extrahuje z PID svoje císlo v tíme j , 0-tý clen tímuextrahuje y0, j-ty (j > 0) clen tímu extrahuje yj a yj−1. Stacia na to posunyo i(b + log n) bitov. Vel’kost’ posunu je i × mocnicna 2⇒ v konštantnomcase.
1 0-tý clen tímu kontroluje ci y0 = x02 j-ty clen tímu kontroluje, ci yj = yj−1 + xj
Procesory, ktoré zistia nerovnost’, to oznámia manažérovi(prostredníctvom komunikacného registra)
František Mráz (KSVI MFF UK) Paralelné algoritmy, cast’ c. 2 Paralelné algoritmy, 2009/2010 6 / 17
![Page 25: Paralelné algoritmy, cast c. 2mraz/paralg/ParAlg2-10.pdfjednoduchšie podúlohy, tie sa riešia paralelne a potom sa z riešení podúloh skladá riešenie celej úlohy. práca v](https://reader033.vdocuments.site/reader033/viewer/2022041613/5e39233e4e371f031559e329/html5/thumbnails/25.jpg)
Paralelné algoritmy pre vybrané funkcie
Scítanie n b-bitových císel
predpokladajme, že n je mocnicna 2 a vstupné císla x0, . . . , xn sú kladnésúcet n b-bitových císel nebude mat’ viac než O(b + log n) bitov – totocíslo bude potrebovat’ každý procesor:
log n viz alg. vyššieb spocítame max. a použijeme hornú celú cast’
b + log n zaokrúhlime na najbližšiu vyššiu alebo rovnú mocninu 22n(b+log n) tímov po n procesoroch; procesor interpretuje svoje PID ako ncísel y0, . . . , yn−1 s b + log n bitmi a císlo j s log n bitmiyn−1 yn−2 . . . y0 j
každý procesor extrahuje z PID svoje císlo v tíme j , 0-tý clen tímuextrahuje y0, j-ty (j > 0) clen tímu extrahuje yj a yj−1. Stacia na to posunyo i(b + log n) bitov. Vel’kost’ posunu je i × mocnicna 2⇒ v konštantnomcase.
1 0-tý clen tímu kontroluje ci y0 = x02 j-ty clen tímu kontroluje, ci yj = yj−1 + xj
Procesory, ktoré zistia nerovnost’, to oznámia manažérovi(prostredníctvom komunikacného registra)
František Mráz (KSVI MFF UK) Paralelné algoritmy, cast’ c. 2 Paralelné algoritmy, 2009/2010 6 / 17
![Page 26: Paralelné algoritmy, cast c. 2mraz/paralg/ParAlg2-10.pdfjednoduchšie podúlohy, tie sa riešia paralelne a potom sa z riešení podúloh skladá riešenie celej úlohy. práca v](https://reader033.vdocuments.site/reader033/viewer/2022041613/5e39233e4e371f031559e329/html5/thumbnails/26.jpg)
Paralelné algoritmy pre vybrané funkcie
Scítanie n b-bitových císel
predpokladajme, že n je mocnicna 2 a vstupné císla x0, . . . , xn sú kladnésúcet n b-bitových císel nebude mat’ viac než O(b + log n) bitov – totocíslo bude potrebovat’ každý procesor:
log n viz alg. vyššieb spocítame max. a použijeme hornú celú cast’
b + log n zaokrúhlime na najbližšiu vyššiu alebo rovnú mocninu 22n(b+log n) tímov po n procesoroch; procesor interpretuje svoje PID ako ncísel y0, . . . , yn−1 s b + log n bitmi a císlo j s log n bitmiyn−1 yn−2 . . . y0 j
každý procesor extrahuje z PID svoje císlo v tíme j , 0-tý clen tímuextrahuje y0, j-ty (j > 0) clen tímu extrahuje yj a yj−1. Stacia na to posunyo i(b + log n) bitov. Vel’kost’ posunu je i × mocnicna 2⇒ v konštantnomcase.
1 0-tý clen tímu kontroluje ci y0 = x02 j-ty clen tímu kontroluje, ci yj = yj−1 + xj
Procesory, ktoré zistia nerovnost’, to oznámia manažérovi(prostredníctvom komunikacného registra)
František Mráz (KSVI MFF UK) Paralelné algoritmy, cast’ c. 2 Paralelné algoritmy, 2009/2010 6 / 17
![Page 27: Paralelné algoritmy, cast c. 2mraz/paralg/ParAlg2-10.pdfjednoduchšie podúlohy, tie sa riešia paralelne a potom sa z riešení podúloh skladá riešenie celej úlohy. práca v](https://reader033.vdocuments.site/reader033/viewer/2022041613/5e39233e4e371f031559e329/html5/thumbnails/27.jpg)
Paralelné algoritmy pre vybrané funkcie
Scítanie n b-bitových císel
predpokladajme, že n je mocnicna 2 a vstupné císla x0, . . . , xn sú kladnésúcet n b-bitových císel nebude mat’ viac než O(b + log n) bitov – totocíslo bude potrebovat’ každý procesor:
log n viz alg. vyššieb spocítame max. a použijeme hornú celú cast’
b + log n zaokrúhlime na najbližšiu vyššiu alebo rovnú mocninu 22n(b+log n) tímov po n procesoroch; procesor interpretuje svoje PID ako ncísel y0, . . . , yn−1 s b + log n bitmi a císlo j s log n bitmiyn−1 yn−2 . . . y0 j
každý procesor extrahuje z PID svoje císlo v tíme j , 0-tý clen tímuextrahuje y0, j-ty (j > 0) clen tímu extrahuje yj a yj−1. Stacia na to posunyo i(b + log n) bitov. Vel’kost’ posunu je i × mocnicna 2⇒ v konštantnomcase.
1 0-tý clen tímu kontroluje ci y0 = x02 j-ty clen tímu kontroluje, ci yj = yj−1 + xj
Procesory, ktoré zistia nerovnost’, to oznámia manažérovi(prostredníctvom komunikacného registra)
František Mráz (KSVI MFF UK) Paralelné algoritmy, cast’ c. 2 Paralelné algoritmy, 2009/2010 6 / 17
![Page 28: Paralelné algoritmy, cast c. 2mraz/paralg/ParAlg2-10.pdfjednoduchšie podúlohy, tie sa riešia paralelne a potom sa z riešení podúloh skladá riešenie celej úlohy. práca v](https://reader033.vdocuments.site/reader033/viewer/2022041613/5e39233e4e371f031559e329/html5/thumbnails/28.jpg)
Paralelné algoritmy pre vybrané funkcie
Scítanie n b-bitových císel
predpokladajme, že n je mocnicna 2 a vstupné císla x0, . . . , xn sú kladnésúcet n b-bitových císel nebude mat’ viac než O(b + log n) bitov – totocíslo bude potrebovat’ každý procesor:
log n viz alg. vyššieb spocítame max. a použijeme hornú celú cast’
b + log n zaokrúhlime na najbližšiu vyššiu alebo rovnú mocninu 22n(b+log n) tímov po n procesoroch; procesor interpretuje svoje PID ako ncísel y0, . . . , yn−1 s b + log n bitmi a císlo j s log n bitmiyn−1 yn−2 . . . y0 j
každý procesor extrahuje z PID svoje císlo v tíme j , 0-tý clen tímuextrahuje y0, j-ty (j > 0) clen tímu extrahuje yj a yj−1. Stacia na to posunyo i(b + log n) bitov. Vel’kost’ posunu je i × mocnicna 2⇒ v konštantnomcase.
1 0-tý clen tímu kontroluje ci y0 = x02 j-ty clen tímu kontroluje, ci yj = yj−1 + xj
Procesory, ktoré zistia nerovnost’, to oznámia manažérovi(prostredníctvom komunikacného registra)
František Mráz (KSVI MFF UK) Paralelné algoritmy, cast’ c. 2 Paralelné algoritmy, 2009/2010 6 / 17
![Page 29: Paralelné algoritmy, cast c. 2mraz/paralg/ParAlg2-10.pdfjednoduchšie podúlohy, tie sa riešia paralelne a potom sa z riešení podúloh skladá riešenie celej úlohy. práca v](https://reader033.vdocuments.site/reader033/viewer/2022041613/5e39233e4e371f031559e329/html5/thumbnails/29.jpg)
Paralelné algoritmy pre vybrané funkcie
Scítanie n b-bitových císel
predpokladajme, že n je mocnicna 2 a vstupné císla x0, . . . , xn sú kladnésúcet n b-bitových císel nebude mat’ viac než O(b + log n) bitov – totocíslo bude potrebovat’ každý procesor:
log n viz alg. vyššieb spocítame max. a použijeme hornú celú cast’
b + log n zaokrúhlime na najbližšiu vyššiu alebo rovnú mocninu 22n(b+log n) tímov po n procesoroch; procesor interpretuje svoje PID ako ncísel y0, . . . , yn−1 s b + log n bitmi a císlo j s log n bitmiyn−1 yn−2 . . . y0 j
každý procesor extrahuje z PID svoje císlo v tíme j , 0-tý clen tímuextrahuje y0, j-ty (j > 0) clen tímu extrahuje yj a yj−1. Stacia na to posunyo i(b + log n) bitov. Vel’kost’ posunu je i × mocnicna 2⇒ v konštantnomcase.
1 0-tý clen tímu kontroluje ci y0 = x02 j-ty clen tímu kontroluje, ci yj = yj−1 + xj
Procesory, ktoré zistia nerovnost’, to oznámia manažérovi(prostredníctvom komunikacného registra)
František Mráz (KSVI MFF UK) Paralelné algoritmy, cast’ c. 2 Paralelné algoritmy, 2009/2010 6 / 17
![Page 30: Paralelné algoritmy, cast c. 2mraz/paralg/ParAlg2-10.pdfjednoduchšie podúlohy, tie sa riešia paralelne a potom sa z riešení podúloh skladá riešenie celej úlohy. práca v](https://reader033.vdocuments.site/reader033/viewer/2022041613/5e39233e4e371f031559e329/html5/thumbnails/30.jpg)
Paralelné algoritmy pre vybrané funkcie
Scítanie n b-bitových císel
predpokladajme, že n je mocnicna 2 a vstupné císla x0, . . . , xn sú kladnésúcet n b-bitových císel nebude mat’ viac než O(b + log n) bitov – totocíslo bude potrebovat’ každý procesor:
log n viz alg. vyššieb spocítame max. a použijeme hornú celú cast’
b + log n zaokrúhlime na najbližšiu vyššiu alebo rovnú mocninu 22n(b+log n) tímov po n procesoroch; procesor interpretuje svoje PID ako ncísel y0, . . . , yn−1 s b + log n bitmi a císlo j s log n bitmiyn−1 yn−2 . . . y0 j
každý procesor extrahuje z PID svoje císlo v tíme j , 0-tý clen tímuextrahuje y0, j-ty (j > 0) clen tímu extrahuje yj a yj−1. Stacia na to posunyo i(b + log n) bitov. Vel’kost’ posunu je i × mocnicna 2⇒ v konštantnomcase.
1 0-tý clen tímu kontroluje ci y0 = x02 j-ty clen tímu kontroluje, ci yj = yj−1 + xj
Procesory, ktoré zistia nerovnost’, to oznámia manažérovi(prostredníctvom komunikacného registra)
František Mráz (KSVI MFF UK) Paralelné algoritmy, cast’ c. 2 Paralelné algoritmy, 2009/2010 6 / 17
![Page 31: Paralelné algoritmy, cast c. 2mraz/paralg/ParAlg2-10.pdfjednoduchšie podúlohy, tie sa riešia paralelne a potom sa z riešení podúloh skladá riešenie celej úlohy. práca v](https://reader033.vdocuments.site/reader033/viewer/2022041613/5e39233e4e371f031559e329/html5/thumbnails/31.jpg)
Paralelné algoritmy pre vybrané funkcie
Scítanie n b-bitových císel
predpokladajme, že n je mocnicna 2 a vstupné císla x0, . . . , xn sú kladnésúcet n b-bitových císel nebude mat’ viac než O(b + log n) bitov – totocíslo bude potrebovat’ každý procesor:
log n viz alg. vyššieb spocítame max. a použijeme hornú celú cast’
b + log n zaokrúhlime na najbližšiu vyššiu alebo rovnú mocninu 22n(b+log n) tímov po n procesoroch; procesor interpretuje svoje PID ako ncísel y0, . . . , yn−1 s b + log n bitmi a císlo j s log n bitmiyn−1 yn−2 . . . y0 j
každý procesor extrahuje z PID svoje císlo v tíme j , 0-tý clen tímuextrahuje y0, j-ty (j > 0) clen tímu extrahuje yj a yj−1. Stacia na to posunyo i(b + log n) bitov. Vel’kost’ posunu je i × mocnicna 2⇒ v konštantnomcase.
1 0-tý clen tímu kontroluje ci y0 = x02 j-ty clen tímu kontroluje, ci yj = yj−1 + xj
Procesory, ktoré zistia nerovnost’, to oznámia manažérovi(prostredníctvom komunikacného registra)
František Mráz (KSVI MFF UK) Paralelné algoritmy, cast’ c. 2 Paralelné algoritmy, 2009/2010 6 / 17
![Page 32: Paralelné algoritmy, cast c. 2mraz/paralg/ParAlg2-10.pdfjednoduchšie podúlohy, tie sa riešia paralelne a potom sa z riešení podúloh skladá riešenie celej úlohy. práca v](https://reader033.vdocuments.site/reader033/viewer/2022041613/5e39233e4e371f031559e329/html5/thumbnails/32.jpg)
Paralelné algoritmy pre vybrané funkcie
Scítanie n b-bitových císel (pokracovanie)
práve jeden tím nezistí žiadnu nerovnost’ – jeho manažér extrahuje yn−1 avydá výsledok.to, že sa jedná o b-bitové císla ovplyvnuje pocet procesorov, ale nie dobuvýpoctuPocet proc. Cas Šírka slova Modeln 2n(b+log n) O(1) n (b + log n)) + log n COMMON
František Mráz (KSVI MFF UK) Paralelné algoritmy, cast’ c. 2 Paralelné algoritmy, 2009/2010 7 / 17
![Page 33: Paralelné algoritmy, cast c. 2mraz/paralg/ParAlg2-10.pdfjednoduchšie podúlohy, tie sa riešia paralelne a potom sa z riešení podúloh skladá riešenie celej úlohy. práca v](https://reader033.vdocuments.site/reader033/viewer/2022041613/5e39233e4e371f031559e329/html5/thumbnails/33.jpg)
Paralelné algoritmy pre vybrané funkcie
Scítanie n b-bitových císel (pokracovanie)
práve jeden tím nezistí žiadnu nerovnost’ – jeho manažér extrahuje yn−1 avydá výsledok.to, že sa jedná o b-bitové císla ovplyvnuje pocet procesorov, ale nie dobuvýpoctuPocet proc. Cas Šírka slova Modeln 2n(b+log n) O(1) n (b + log n)) + log n COMMON
František Mráz (KSVI MFF UK) Paralelné algoritmy, cast’ c. 2 Paralelné algoritmy, 2009/2010 7 / 17
![Page 34: Paralelné algoritmy, cast c. 2mraz/paralg/ParAlg2-10.pdfjednoduchšie podúlohy, tie sa riešia paralelne a potom sa z riešení podúloh skladá riešenie celej úlohy. práca v](https://reader033.vdocuments.site/reader033/viewer/2022041613/5e39233e4e371f031559e329/html5/thumbnails/34.jpg)
Paralelné algoritmy pre vybrané funkcie
Scítanie n b-bitových císel (pokracovanie)
práve jeden tím nezistí žiadnu nerovnost’ – jeho manažér extrahuje yn−1 avydá výsledok.to, že sa jedná o b-bitové císla ovplyvnuje pocet procesorov, ale nie dobuvýpoctuPocet proc. Cas Šírka slova Modeln 2n(b+log n) O(1) n (b + log n)) + log n COMMON
František Mráz (KSVI MFF UK) Paralelné algoritmy, cast’ c. 2 Paralelné algoritmy, 2009/2010 7 / 17
![Page 35: Paralelné algoritmy, cast c. 2mraz/paralg/ParAlg2-10.pdfjednoduchšie podúlohy, tie sa riešia paralelne a potom sa z riešení podúloh skladá riešenie celej úlohy. práca v](https://reader033.vdocuments.site/reader033/viewer/2022041613/5e39233e4e371f031559e329/html5/thumbnails/35.jpg)
Paralelné algoritmy pre vybrané funkcie
Násobenie b-bitových císel v konštantnom case
školská metóda násobenia, predpokladáme, že x1 a x2 sú kladnéspocítame b (log väcšieho z nich) a vložíme do r0
i-ty procesor:extrahuj i-ty bit císla x2 (zodpovedá rádu 2i )ak je bit 1, tak posun x1 o i bitov dol’ava (tj. násob 2i ) a výsledokzapíš do r i+1inak do r i+1 zapíš 0
súcet císel r1, . . . , rb spocítame v konšt. case
Pocet proc. Cas Šírka slova Modelb 2b (2b+log b) O(1) O(b (b + log b)) = O(b2) COMMON
František Mráz (KSVI MFF UK) Paralelné algoritmy, cast’ c. 2 Paralelné algoritmy, 2009/2010 8 / 17
![Page 36: Paralelné algoritmy, cast c. 2mraz/paralg/ParAlg2-10.pdfjednoduchšie podúlohy, tie sa riešia paralelne a potom sa z riešení podúloh skladá riešenie celej úlohy. práca v](https://reader033.vdocuments.site/reader033/viewer/2022041613/5e39233e4e371f031559e329/html5/thumbnails/36.jpg)
Paralelné algoritmy pre vybrané funkcie
Násobenie b-bitových císel v konštantnom case
školská metóda násobenia, predpokladáme, že x1 a x2 sú kladnéspocítame b (log väcšieho z nich) a vložíme do r0
i-ty procesor:extrahuj i-ty bit císla x2 (zodpovedá rádu 2i )ak je bit 1, tak posun x1 o i bitov dol’ava (tj. násob 2i ) a výsledokzapíš do r i+1inak do r i+1 zapíš 0
súcet císel r1, . . . , rb spocítame v konšt. case
Pocet proc. Cas Šírka slova Modelb 2b (2b+log b) O(1) O(b (b + log b)) = O(b2) COMMON
František Mráz (KSVI MFF UK) Paralelné algoritmy, cast’ c. 2 Paralelné algoritmy, 2009/2010 8 / 17
![Page 37: Paralelné algoritmy, cast c. 2mraz/paralg/ParAlg2-10.pdfjednoduchšie podúlohy, tie sa riešia paralelne a potom sa z riešení podúloh skladá riešenie celej úlohy. práca v](https://reader033.vdocuments.site/reader033/viewer/2022041613/5e39233e4e371f031559e329/html5/thumbnails/37.jpg)
Paralelné algoritmy pre vybrané funkcie
Násobenie b-bitových císel v konštantnom case
školská metóda násobenia, predpokladáme, že x1 a x2 sú kladnéspocítame b (log väcšieho z nich) a vložíme do r0
i-ty procesor:extrahuj i-ty bit císla x2 (zodpovedá rádu 2i )ak je bit 1, tak posun x1 o i bitov dol’ava (tj. násob 2i ) a výsledokzapíš do r i+1inak do r i+1 zapíš 0
súcet císel r1, . . . , rb spocítame v konšt. case
Pocet proc. Cas Šírka slova Modelb 2b (2b+log b) O(1) O(b (b + log b)) = O(b2) COMMON
František Mráz (KSVI MFF UK) Paralelné algoritmy, cast’ c. 2 Paralelné algoritmy, 2009/2010 8 / 17
![Page 38: Paralelné algoritmy, cast c. 2mraz/paralg/ParAlg2-10.pdfjednoduchšie podúlohy, tie sa riešia paralelne a potom sa z riešení podúloh skladá riešenie celej úlohy. práca v](https://reader033.vdocuments.site/reader033/viewer/2022041613/5e39233e4e371f031559e329/html5/thumbnails/38.jpg)
Paralelné algoritmy pre vybrané funkcie
Násobenie b-bitových císel v konštantnom case
školská metóda násobenia, predpokladáme, že x1 a x2 sú kladnéspocítame b (log väcšieho z nich) a vložíme do r0
i-ty procesor:extrahuj i-ty bit císla x2 (zodpovedá rádu 2i )ak je bit 1, tak posun x1 o i bitov dol’ava (tj. násob 2i ) a výsledokzapíš do r i+1inak do r i+1 zapíš 0
súcet císel r1, . . . , rb spocítame v konšt. case
Pocet proc. Cas Šírka slova Modelb 2b (2b+log b) O(1) O(b (b + log b)) = O(b2) COMMON
František Mráz (KSVI MFF UK) Paralelné algoritmy, cast’ c. 2 Paralelné algoritmy, 2009/2010 8 / 17
![Page 39: Paralelné algoritmy, cast c. 2mraz/paralg/ParAlg2-10.pdfjednoduchšie podúlohy, tie sa riešia paralelne a potom sa z riešení podúloh skladá riešenie celej úlohy. práca v](https://reader033.vdocuments.site/reader033/viewer/2022041613/5e39233e4e371f031559e329/html5/thumbnails/39.jpg)
Paralelné algoritmy pre vybrané funkcie
Násobenie b-bitových císel v konštantnom case
školská metóda násobenia, predpokladáme, že x1 a x2 sú kladnéspocítame b (log väcšieho z nich) a vložíme do r0
i-ty procesor:extrahuj i-ty bit císla x2 (zodpovedá rádu 2i )ak je bit 1, tak posun x1 o i bitov dol’ava (tj. násob 2i ) a výsledokzapíš do r i+1inak do r i+1 zapíš 0
súcet císel r1, . . . , rb spocítame v konšt. case
Pocet proc. Cas Šírka slova Modelb 2b (2b+log b) O(1) O(b (b + log b)) = O(b2) COMMON
František Mráz (KSVI MFF UK) Paralelné algoritmy, cast’ c. 2 Paralelné algoritmy, 2009/2010 8 / 17
![Page 40: Paralelné algoritmy, cast c. 2mraz/paralg/ParAlg2-10.pdfjednoduchšie podúlohy, tie sa riešia paralelne a potom sa z riešení podúloh skladá riešenie celej úlohy. práca v](https://reader033.vdocuments.site/reader033/viewer/2022041613/5e39233e4e371f031559e329/html5/thumbnails/40.jpg)
Paralelné algoritmy pre vybrané funkcie
Násobenie b-bitových císel v konštantnom case
školská metóda násobenia, predpokladáme, že x1 a x2 sú kladnéspocítame b (log väcšieho z nich) a vložíme do r0
i-ty procesor:extrahuj i-ty bit císla x2 (zodpovedá rádu 2i )ak je bit 1, tak posun x1 o i bitov dol’ava (tj. násob 2i ) a výsledokzapíš do r i+1inak do r i+1 zapíš 0
súcet císel r1, . . . , rb spocítame v konšt. case
Pocet proc. Cas Šírka slova Modelb 2b (2b+log b) O(1) O(b (b + log b)) = O(b2) COMMON
František Mráz (KSVI MFF UK) Paralelné algoritmy, cast’ c. 2 Paralelné algoritmy, 2009/2010 8 / 17
![Page 41: Paralelné algoritmy, cast c. 2mraz/paralg/ParAlg2-10.pdfjednoduchšie podúlohy, tie sa riešia paralelne a potom sa z riešení podúloh skladá riešenie celej úlohy. práca v](https://reader033.vdocuments.site/reader033/viewer/2022041613/5e39233e4e371f031559e329/html5/thumbnails/41.jpg)
Paralelné algoritmy pre vybrané funkcie
Násobenie b-bitových císel v konštantnom case
školská metóda násobenia, predpokladáme, že x1 a x2 sú kladnéspocítame b (log väcšieho z nich) a vložíme do r0
i-ty procesor:extrahuj i-ty bit císla x2 (zodpovedá rádu 2i )ak je bit 1, tak posun x1 o i bitov dol’ava (tj. násob 2i ) a výsledokzapíš do r i+1inak do r i+1 zapíš 0
súcet císel r1, . . . , rb spocítame v konšt. case
Pocet proc. Cas Šírka slova Modelb 2b (2b+log b) O(1) O(b (b + log b)) = O(b2) COMMON
František Mráz (KSVI MFF UK) Paralelné algoritmy, cast’ c. 2 Paralelné algoritmy, 2009/2010 8 / 17
![Page 42: Paralelné algoritmy, cast c. 2mraz/paralg/ParAlg2-10.pdfjednoduchšie podúlohy, tie sa riešia paralelne a potom sa z riešení podúloh skladá riešenie celej úlohy. práca v](https://reader033.vdocuments.site/reader033/viewer/2022041613/5e39233e4e371f031559e329/html5/thumbnails/42.jpg)
Paralelné algoritmy pre vybrané funkcie
Násobenie b-bitových císel v konštantnom case
školská metóda násobenia, predpokladáme, že x1 a x2 sú kladnéspocítame b (log väcšieho z nich) a vložíme do r0
i-ty procesor:extrahuj i-ty bit císla x2 (zodpovedá rádu 2i )ak je bit 1, tak posun x1 o i bitov dol’ava (tj. násob 2i ) a výsledokzapíš do r i+1inak do r i+1 zapíš 0
súcet císel r1, . . . , rb spocítame v konšt. case
Pocet proc. Cas Šírka slova Modelb 2b (2b+log b) O(1) O(b (b + log b)) = O(b2) COMMON
František Mráz (KSVI MFF UK) Paralelné algoritmy, cast’ c. 2 Paralelné algoritmy, 2009/2010 8 / 17
![Page 43: Paralelné algoritmy, cast c. 2mraz/paralg/ParAlg2-10.pdfjednoduchšie podúlohy, tie sa riešia paralelne a potom sa z riešení podúloh skladá riešenie celej úlohy. práca v](https://reader033.vdocuments.site/reader033/viewer/2022041613/5e39233e4e371f031559e329/html5/thumbnails/43.jpg)
Paralelné algoritmy pre vybrané funkcie
Odmocnovanie císel v konštantnom case
nech c > 1, prirodzené císlo, n vstupné celé císlo. Chcemespocítat’ dn
1c e
n tímov procesorov
tím i (0 ≤ i < n) kontroluje, ci i = dn1c e
1 pocíta ic pomocou c − 1 násobení; jeden tím má 2O(log2 n)
procesorov2 if (n ≤ ic) and (ic−1 < n) then r1 := i
Pocet proc. Cas Šírka slova Modeln 2O(log2 n) O(1) O(log2 n) COMMON
František Mráz (KSVI MFF UK) Paralelné algoritmy, cast’ c. 2 Paralelné algoritmy, 2009/2010 9 / 17
![Page 44: Paralelné algoritmy, cast c. 2mraz/paralg/ParAlg2-10.pdfjednoduchšie podúlohy, tie sa riešia paralelne a potom sa z riešení podúloh skladá riešenie celej úlohy. práca v](https://reader033.vdocuments.site/reader033/viewer/2022041613/5e39233e4e371f031559e329/html5/thumbnails/44.jpg)
Paralelné algoritmy pre vybrané funkcie
Odmocnovanie císel v konštantnom case
nech c > 1, prirodzené císlo, n vstupné celé císlo. Chcemespocítat’ dn
1c e
n tímov procesorov
tím i (0 ≤ i < n) kontroluje, ci i = dn1c e
1 pocíta ic pomocou c − 1 násobení; jeden tím má 2O(log2 n)
procesorov2 if (n ≤ ic) and (ic−1 < n) then r1 := i
Pocet proc. Cas Šírka slova Modeln 2O(log2 n) O(1) O(log2 n) COMMON
František Mráz (KSVI MFF UK) Paralelné algoritmy, cast’ c. 2 Paralelné algoritmy, 2009/2010 9 / 17
![Page 45: Paralelné algoritmy, cast c. 2mraz/paralg/ParAlg2-10.pdfjednoduchšie podúlohy, tie sa riešia paralelne a potom sa z riešení podúloh skladá riešenie celej úlohy. práca v](https://reader033.vdocuments.site/reader033/viewer/2022041613/5e39233e4e371f031559e329/html5/thumbnails/45.jpg)
Paralelné algoritmy pre vybrané funkcie
Odmocnovanie císel v konštantnom case
nech c > 1, prirodzené císlo, n vstupné celé císlo. Chcemespocítat’ dn
1c e
n tímov procesorov
tím i (0 ≤ i < n) kontroluje, ci i = dn1c e
1 pocíta ic pomocou c − 1 násobení; jeden tím má 2O(log2 n)
procesorov2 if (n ≤ ic) and (ic−1 < n) then r1 := i
Pocet proc. Cas Šírka slova Modeln 2O(log2 n) O(1) O(log2 n) COMMON
František Mráz (KSVI MFF UK) Paralelné algoritmy, cast’ c. 2 Paralelné algoritmy, 2009/2010 9 / 17
![Page 46: Paralelné algoritmy, cast c. 2mraz/paralg/ParAlg2-10.pdfjednoduchšie podúlohy, tie sa riešia paralelne a potom sa z riešení podúloh skladá riešenie celej úlohy. práca v](https://reader033.vdocuments.site/reader033/viewer/2022041613/5e39233e4e371f031559e329/html5/thumbnails/46.jpg)
Paralelné algoritmy pre vybrané funkcie
Odmocnovanie císel v konštantnom case
nech c > 1, prirodzené císlo, n vstupné celé císlo. Chcemespocítat’ dn
1c e
n tímov procesorov
tím i (0 ≤ i < n) kontroluje, ci i = dn1c e
1 pocíta ic pomocou c − 1 násobení; jeden tím má 2O(log2 n)
procesorov2 if (n ≤ ic) and (ic−1 < n) then r1 := i
Pocet proc. Cas Šírka slova Modeln 2O(log2 n) O(1) O(log2 n) COMMON
František Mráz (KSVI MFF UK) Paralelné algoritmy, cast’ c. 2 Paralelné algoritmy, 2009/2010 9 / 17
![Page 47: Paralelné algoritmy, cast c. 2mraz/paralg/ParAlg2-10.pdfjednoduchšie podúlohy, tie sa riešia paralelne a potom sa z riešení podúloh skladá riešenie celej úlohy. práca v](https://reader033.vdocuments.site/reader033/viewer/2022041613/5e39233e4e371f031559e329/html5/thumbnails/47.jpg)
Paralelné algoritmy pre vybrané funkcie
Odmocnovanie císel v konštantnom case
nech c > 1, prirodzené císlo, n vstupné celé císlo. Chcemespocítat’ dn
1c e
n tímov procesorov
tím i (0 ≤ i < n) kontroluje, ci i = dn1c e
1 pocíta ic pomocou c − 1 násobení; jeden tím má 2O(log2 n)
procesorov2 if (n ≤ ic) and (ic−1 < n) then r1 := i
Pocet proc. Cas Šírka slova Modeln 2O(log2 n) O(1) O(log2 n) COMMON
František Mráz (KSVI MFF UK) Paralelné algoritmy, cast’ c. 2 Paralelné algoritmy, 2009/2010 9 / 17
![Page 48: Paralelné algoritmy, cast c. 2mraz/paralg/ParAlg2-10.pdfjednoduchšie podúlohy, tie sa riešia paralelne a potom sa z riešení podúloh skladá riešenie celej úlohy. práca v](https://reader033.vdocuments.site/reader033/viewer/2022041613/5e39233e4e371f031559e329/html5/thumbnails/48.jpg)
Paralelné algoritmy pre vybrané funkcie
Odmocnovanie císel v konštantnom case
nech c > 1, prirodzené císlo, n vstupné celé císlo. Chcemespocítat’ dn
1c e
n tímov procesorov
tím i (0 ≤ i < n) kontroluje, ci i = dn1c e
1 pocíta ic pomocou c − 1 násobení; jeden tím má 2O(log2 n)
procesorov2 if (n ≤ ic) and (ic−1 < n) then r1 := i
Pocet proc. Cas Šírka slova Modeln 2O(log2 n) O(1) O(log2 n) COMMON
František Mráz (KSVI MFF UK) Paralelné algoritmy, cast’ c. 2 Paralelné algoritmy, 2009/2010 9 / 17
![Page 49: Paralelné algoritmy, cast c. 2mraz/paralg/ParAlg2-10.pdfjednoduchšie podúlohy, tie sa riešia paralelne a potom sa z riešení podúloh skladá riešenie celej úlohy. práca v](https://reader033.vdocuments.site/reader033/viewer/2022041613/5e39233e4e371f031559e329/html5/thumbnails/49.jpg)
Paralelné algoritmy pre vybrané funkcie
Scítanie císel v konštantnom case s menšou šírkouslova
budeme potrebovat’ scítat’ císla s konštantnou bitovou dlžkou naCOMMON PRAM s lineárnou dlžkou slovaVstup: n kladných celých císel s n1− 1
c bitmi pre nejaké celé císloc ≥ 2Dohoda: nebudeme oznacovat’ horné a dolné celé castisúcet a každý ciastocný súcet bude mat’ maximálne O(n1− 1
c ) bitovAlgoritmus:
spocítame m = n1
c+1
Fáza 1: rozdel’ vstupné císla do skupín po m císel a urobsúcet každej skupinyopakuj c-krátdostaneme n
mc císelFáza 2: scítaj n
mc ciastocných súctov
František Mráz (KSVI MFF UK) Paralelné algoritmy, cast’ c. 2 Paralelné algoritmy, 2009/2010 10 / 17
![Page 50: Paralelné algoritmy, cast c. 2mraz/paralg/ParAlg2-10.pdfjednoduchšie podúlohy, tie sa riešia paralelne a potom sa z riešení podúloh skladá riešenie celej úlohy. práca v](https://reader033.vdocuments.site/reader033/viewer/2022041613/5e39233e4e371f031559e329/html5/thumbnails/50.jpg)
Paralelné algoritmy pre vybrané funkcie
Scítanie císel v konštantnom case s menšou šírkouslova
budeme potrebovat’ scítat’ císla s konštantnou bitovou dlžkou naCOMMON PRAM s lineárnou dlžkou slovaVstup: n kladných celých císel s n1− 1
c bitmi pre nejaké celé císloc ≥ 2Dohoda: nebudeme oznacovat’ horné a dolné celé castisúcet a každý ciastocný súcet bude mat’ maximálne O(n1− 1
c ) bitovAlgoritmus:
spocítame m = n1
c+1
Fáza 1: rozdel’ vstupné císla do skupín po m císel a urobsúcet každej skupinyopakuj c-krátdostaneme n
mc císelFáza 2: scítaj n
mc ciastocných súctov
František Mráz (KSVI MFF UK) Paralelné algoritmy, cast’ c. 2 Paralelné algoritmy, 2009/2010 10 / 17
![Page 51: Paralelné algoritmy, cast c. 2mraz/paralg/ParAlg2-10.pdfjednoduchšie podúlohy, tie sa riešia paralelne a potom sa z riešení podúloh skladá riešenie celej úlohy. práca v](https://reader033.vdocuments.site/reader033/viewer/2022041613/5e39233e4e371f031559e329/html5/thumbnails/51.jpg)
Paralelné algoritmy pre vybrané funkcie
Scítanie císel v konštantnom case s menšou šírkouslova
budeme potrebovat’ scítat’ císla s konštantnou bitovou dlžkou naCOMMON PRAM s lineárnou dlžkou slovaVstup: n kladných celých císel s n1− 1
c bitmi pre nejaké celé císloc ≥ 2Dohoda: nebudeme oznacovat’ horné a dolné celé castisúcet a každý ciastocný súcet bude mat’ maximálne O(n1− 1
c ) bitovAlgoritmus:
spocítame m = n1
c+1
Fáza 1: rozdel’ vstupné císla do skupín po m císel a urobsúcet každej skupinyopakuj c-krátdostaneme n
mc císelFáza 2: scítaj n
mc ciastocných súctov
František Mráz (KSVI MFF UK) Paralelné algoritmy, cast’ c. 2 Paralelné algoritmy, 2009/2010 10 / 17
![Page 52: Paralelné algoritmy, cast c. 2mraz/paralg/ParAlg2-10.pdfjednoduchšie podúlohy, tie sa riešia paralelne a potom sa z riešení podúloh skladá riešenie celej úlohy. práca v](https://reader033.vdocuments.site/reader033/viewer/2022041613/5e39233e4e371f031559e329/html5/thumbnails/52.jpg)
Paralelné algoritmy pre vybrané funkcie
Scítanie císel v konštantnom case s menšou šírkouslova
budeme potrebovat’ scítat’ císla s konštantnou bitovou dlžkou naCOMMON PRAM s lineárnou dlžkou slovaVstup: n kladných celých císel s n1− 1
c bitmi pre nejaké celé císloc ≥ 2Dohoda: nebudeme oznacovat’ horné a dolné celé castisúcet a každý ciastocný súcet bude mat’ maximálne O(n1− 1
c ) bitovAlgoritmus:
spocítame m = n1
c+1
Fáza 1: rozdel’ vstupné císla do skupín po m císel a urobsúcet každej skupinyopakuj c-krátdostaneme n
mc císelFáza 2: scítaj n
mc ciastocných súctov
František Mráz (KSVI MFF UK) Paralelné algoritmy, cast’ c. 2 Paralelné algoritmy, 2009/2010 10 / 17
![Page 53: Paralelné algoritmy, cast c. 2mraz/paralg/ParAlg2-10.pdfjednoduchšie podúlohy, tie sa riešia paralelne a potom sa z riešení podúloh skladá riešenie celej úlohy. práca v](https://reader033.vdocuments.site/reader033/viewer/2022041613/5e39233e4e371f031559e329/html5/thumbnails/53.jpg)
Paralelné algoritmy pre vybrané funkcie
Scítanie císel v konštantnom case s menšou šírkouslova
budeme potrebovat’ scítat’ císla s konštantnou bitovou dlžkou naCOMMON PRAM s lineárnou dlžkou slovaVstup: n kladných celých císel s n1− 1
c bitmi pre nejaké celé císloc ≥ 2Dohoda: nebudeme oznacovat’ horné a dolné celé castisúcet a každý ciastocný súcet bude mat’ maximálne O(n1− 1
c ) bitovAlgoritmus:
spocítame m = n1
c+1
Fáza 1: rozdel’ vstupné císla do skupín po m císel a urobsúcet každej skupinyopakuj c-krátdostaneme n
mc císelFáza 2: scítaj n
mc ciastocných súctov
František Mráz (KSVI MFF UK) Paralelné algoritmy, cast’ c. 2 Paralelné algoritmy, 2009/2010 10 / 17
![Page 54: Paralelné algoritmy, cast c. 2mraz/paralg/ParAlg2-10.pdfjednoduchšie podúlohy, tie sa riešia paralelne a potom sa z riešení podúloh skladá riešenie celej úlohy. práca v](https://reader033.vdocuments.site/reader033/viewer/2022041613/5e39233e4e371f031559e329/html5/thumbnails/54.jpg)
Paralelné algoritmy pre vybrané funkcie
Scítanie císel v konštantnom case s menšou šírkouslova
budeme potrebovat’ scítat’ císla s konštantnou bitovou dlžkou naCOMMON PRAM s lineárnou dlžkou slovaVstup: n kladných celých císel s n1− 1
c bitmi pre nejaké celé císloc ≥ 2Dohoda: nebudeme oznacovat’ horné a dolné celé castisúcet a každý ciastocný súcet bude mat’ maximálne O(n1− 1
c ) bitovAlgoritmus:
spocítame m = n1
c+1
Fáza 1: rozdel’ vstupné císla do skupín po m císel a urobsúcet každej skupinyopakuj c-krátdostaneme n
mc císelFáza 2: scítaj n
mc ciastocných súctov
František Mráz (KSVI MFF UK) Paralelné algoritmy, cast’ c. 2 Paralelné algoritmy, 2009/2010 10 / 17
![Page 55: Paralelné algoritmy, cast c. 2mraz/paralg/ParAlg2-10.pdfjednoduchšie podúlohy, tie sa riešia paralelne a potom sa z riešení podúloh skladá riešenie celej úlohy. práca v](https://reader033.vdocuments.site/reader033/viewer/2022041613/5e39233e4e371f031559e329/html5/thumbnails/55.jpg)
Paralelné algoritmy pre vybrané funkcie
Scítanie císel v konštantnom case s menšou šírkouslova
budeme potrebovat’ scítat’ císla s konštantnou bitovou dlžkou naCOMMON PRAM s lineárnou dlžkou slovaVstup: n kladných celých císel s n1− 1
c bitmi pre nejaké celé císloc ≥ 2Dohoda: nebudeme oznacovat’ horné a dolné celé castisúcet a každý ciastocný súcet bude mat’ maximálne O(n1− 1
c ) bitovAlgoritmus:
spocítame m = n1
c+1
Fáza 1: rozdel’ vstupné císla do skupín po m císel a urobsúcet každej skupinyopakuj c-krátdostaneme n
mc císelFáza 2: scítaj n
mc ciastocných súctov
František Mráz (KSVI MFF UK) Paralelné algoritmy, cast’ c. 2 Paralelné algoritmy, 2009/2010 10 / 17
![Page 56: Paralelné algoritmy, cast c. 2mraz/paralg/ParAlg2-10.pdfjednoduchšie podúlohy, tie sa riešia paralelne a potom sa z riešení podúloh skladá riešenie celej úlohy. práca v](https://reader033.vdocuments.site/reader033/viewer/2022041613/5e39233e4e371f031559e329/html5/thumbnails/56.jpg)
Paralelné algoritmy pre vybrané funkcie
Scítanie císel v konštantnom case s menšou šírkouslova
budeme potrebovat’ scítat’ císla s konštantnou bitovou dlžkou naCOMMON PRAM s lineárnou dlžkou slovaVstup: n kladných celých císel s n1− 1
c bitmi pre nejaké celé císloc ≥ 2Dohoda: nebudeme oznacovat’ horné a dolné celé castisúcet a každý ciastocný súcet bude mat’ maximálne O(n1− 1
c ) bitovAlgoritmus:
spocítame m = n1
c+1
Fáza 1: rozdel’ vstupné císla do skupín po m císel a urobsúcet každej skupinyopakuj c-krátdostaneme n
mc císelFáza 2: scítaj n
mc ciastocných súctov
František Mráz (KSVI MFF UK) Paralelné algoritmy, cast’ c. 2 Paralelné algoritmy, 2009/2010 10 / 17
![Page 57: Paralelné algoritmy, cast c. 2mraz/paralg/ParAlg2-10.pdfjednoduchšie podúlohy, tie sa riešia paralelne a potom sa z riešení podúloh skladá riešenie celej úlohy. práca v](https://reader033.vdocuments.site/reader033/viewer/2022041613/5e39233e4e371f031559e329/html5/thumbnails/57.jpg)
Paralelné algoritmy pre vybrané funkcie
Scítanie císel v konštantnom case s menšou šírkouslova
predvýpocet: cas O(1), malá šírka slova pre vel’ké nFázy 1 a 2 sa urobia starým postupom v konšt. casešírka slova na Fázu 1:
m · n1− 1c = n1− 1
c2+c
šírka slova na Fázu 2:
nmc · n
1− 1c = n1− 1
c2+c
František Mráz (KSVI MFF UK) Paralelné algoritmy, cast’ c. 2 Paralelné algoritmy, 2009/2010 11 / 17
![Page 58: Paralelné algoritmy, cast c. 2mraz/paralg/ParAlg2-10.pdfjednoduchšie podúlohy, tie sa riešia paralelne a potom sa z riešení podúloh skladá riešenie celej úlohy. práca v](https://reader033.vdocuments.site/reader033/viewer/2022041613/5e39233e4e371f031559e329/html5/thumbnails/58.jpg)
Paralelné algoritmy pre vybrané funkcie
Scítanie císel v konštantnom case s menšou šírkouslova
Veta
n (n1− 1c )-bitových císel sa dá scítat’ v konštantnom case na PRAMe
so šírkou slova O(
n1− 1c2+c
).
Ekvivalentne: ∀λ,0 < λ ≤ 12 ∃µ > 0 : súcet n císel s n1−λ bitmi sa
dá spocítat’ v case O(1) na PRAMe COMMON so šírkou slova n1−µ
obecná technika: použitím jedného algoritmu na menšie skupinysa vel’kost’ úlohy zredukuje a na zmenšenú úlohu sa aplikujepôvodný algoritmus.Zisk: zníženie potrebnej šírky slova zn(n1− 1
c + log n) + log n ≈ n2− 1c > n
32
František Mráz (KSVI MFF UK) Paralelné algoritmy, cast’ c. 2 Paralelné algoritmy, 2009/2010 12 / 17
![Page 59: Paralelné algoritmy, cast c. 2mraz/paralg/ParAlg2-10.pdfjednoduchšie podúlohy, tie sa riešia paralelne a potom sa z riešení podúloh skladá riešenie celej úlohy. práca v](https://reader033.vdocuments.site/reader033/viewer/2022041613/5e39233e4e371f031559e329/html5/thumbnails/59.jpg)
Paralelné algoritmy pre vybrané funkcie
Scítanie císel v konštantnom case s menšou šírkouslova
Veta
n (n1− 1c )-bitových císel sa dá scítat’ v konštantnom case na PRAMe
so šírkou slova O(
n1− 1c2+c
).
Ekvivalentne: ∀λ,0 < λ ≤ 12 ∃µ > 0 : súcet n císel s n1−λ bitmi sa
dá spocítat’ v case O(1) na PRAMe COMMON so šírkou slova n1−µ
obecná technika: použitím jedného algoritmu na menšie skupinysa vel’kost’ úlohy zredukuje a na zmenšenú úlohu sa aplikujepôvodný algoritmus.Zisk: zníženie potrebnej šírky slova zn(n1− 1
c + log n) + log n ≈ n2− 1c > n
32
František Mráz (KSVI MFF UK) Paralelné algoritmy, cast’ c. 2 Paralelné algoritmy, 2009/2010 12 / 17
![Page 60: Paralelné algoritmy, cast c. 2mraz/paralg/ParAlg2-10.pdfjednoduchšie podúlohy, tie sa riešia paralelne a potom sa z riešení podúloh skladá riešenie celej úlohy. práca v](https://reader033.vdocuments.site/reader033/viewer/2022041613/5e39233e4e371f031559e329/html5/thumbnails/60.jpg)
Paralelné algoritmy pre vybrané funkcie
Scítanie císel v konštantnom case s menšou šírkouslova
Veta
n (n1− 1c )-bitových císel sa dá scítat’ v konštantnom case na PRAMe
so šírkou slova O(
n1− 1c2+c
).
Ekvivalentne: ∀λ,0 < λ ≤ 12 ∃µ > 0 : súcet n císel s n1−λ bitmi sa
dá spocítat’ v case O(1) na PRAMe COMMON so šírkou slova n1−µ
obecná technika: použitím jedného algoritmu na menšie skupinysa vel’kost’ úlohy zredukuje a na zmenšenú úlohu sa aplikujepôvodný algoritmus.Zisk: zníženie potrebnej šírky slova zn(n1− 1
c + log n) + log n ≈ n2− 1c > n
32
František Mráz (KSVI MFF UK) Paralelné algoritmy, cast’ c. 2 Paralelné algoritmy, 2009/2010 12 / 17
![Page 61: Paralelné algoritmy, cast c. 2mraz/paralg/ParAlg2-10.pdfjednoduchšie podúlohy, tie sa riešia paralelne a potom sa z riešení podúloh skladá riešenie celej úlohy. práca v](https://reader033.vdocuments.site/reader033/viewer/2022041613/5e39233e4e371f031559e329/html5/thumbnails/61.jpg)
Paralelné algoritmy pre vybrané funkcie
Pocítanie funkcií prev a last
Nech xi ∈ N,1 ≤ xi ≤ n, 1 ≤ i ≤ n
prev : Zn → Zn a prev(x1, . . . , xn) =< y1, . . . , yn >
kde yi =
{j ak xj = xi , j < i a xk 6= xi pre j < k < i0 ak také j neexistuje
last : Zn → Zn a last(x1, . . . , xn) =< y1, . . . , yn >
kde yi =
{j ak xj = xi a xk 6= xi pre j < k ≤ n0 ak také j neexistuje
prev a last sa dajú spocítat’ v konštantnom case na PRAMe sošírkou slova O(log n)
František Mráz (KSVI MFF UK) Paralelné algoritmy, cast’ c. 2 Paralelné algoritmy, 2009/2010 13 / 17
![Page 62: Paralelné algoritmy, cast c. 2mraz/paralg/ParAlg2-10.pdfjednoduchšie podúlohy, tie sa riešia paralelne a potom sa z riešení podúloh skladá riešenie celej úlohy. práca v](https://reader033.vdocuments.site/reader033/viewer/2022041613/5e39233e4e371f031559e329/html5/thumbnails/62.jpg)
Paralelné algoritmy pre vybrané funkcie
Pocítanie funkcií prev a last
Nech xi ∈ N,1 ≤ xi ≤ n, 1 ≤ i ≤ n
prev : Zn → Zn a prev(x1, . . . , xn) =< y1, . . . , yn >
kde yi =
{j ak xj = xi , j < i a xk 6= xi pre j < k < i0 ak také j neexistuje
last : Zn → Zn a last(x1, . . . , xn) =< y1, . . . , yn >
kde yi =
{j ak xj = xi a xk 6= xi pre j < k ≤ n0 ak také j neexistuje
prev a last sa dajú spocítat’ v konštantnom case na PRAMe sošírkou slova O(log n)
František Mráz (KSVI MFF UK) Paralelné algoritmy, cast’ c. 2 Paralelné algoritmy, 2009/2010 13 / 17
![Page 63: Paralelné algoritmy, cast c. 2mraz/paralg/ParAlg2-10.pdfjednoduchšie podúlohy, tie sa riešia paralelne a potom sa z riešení podúloh skladá riešenie celej úlohy. práca v](https://reader033.vdocuments.site/reader033/viewer/2022041613/5e39233e4e371f031559e329/html5/thumbnails/63.jpg)
Paralelné algoritmy pre vybrané funkcie
Pocítanie funkcií prev a last
Nech xi ∈ N,1 ≤ xi ≤ n, 1 ≤ i ≤ n
prev : Zn → Zn a prev(x1, . . . , xn) =< y1, . . . , yn >
kde yi =
{j ak xj = xi , j < i a xk 6= xi pre j < k < i0 ak také j neexistuje
last : Zn → Zn a last(x1, . . . , xn) =< y1, . . . , yn >
kde yi =
{j ak xj = xi a xk 6= xi pre j < k ≤ n0 ak také j neexistuje
prev a last sa dajú spocítat’ v konštantnom case na PRAMe sošírkou slova O(log n)
František Mráz (KSVI MFF UK) Paralelné algoritmy, cast’ c. 2 Paralelné algoritmy, 2009/2010 13 / 17
![Page 64: Paralelné algoritmy, cast c. 2mraz/paralg/ParAlg2-10.pdfjednoduchšie podúlohy, tie sa riešia paralelne a potom sa z riešení podúloh skladá riešenie celej úlohy. práca v](https://reader033.vdocuments.site/reader033/viewer/2022041613/5e39233e4e371f031559e329/html5/thumbnails/64.jpg)
Paralelné algoritmy pre vybrané funkcie
Pocítanie funkcií prev a last
Nech xi ∈ N,1 ≤ xi ≤ n, 1 ≤ i ≤ n
prev : Zn → Zn a prev(x1, . . . , xn) =< y1, . . . , yn >
kde yi =
{j ak xj = xi , j < i a xk 6= xi pre j < k < i0 ak také j neexistuje
last : Zn → Zn a last(x1, . . . , xn) =< y1, . . . , yn >
kde yi =
{j ak xj = xi a xk 6= xi pre j < k ≤ n0 ak také j neexistuje
prev a last sa dajú spocítat’ v konštantnom case na PRAMe sošírkou slova O(log n)
František Mráz (KSVI MFF UK) Paralelné algoritmy, cast’ c. 2 Paralelné algoritmy, 2009/2010 13 / 17
![Page 65: Paralelné algoritmy, cast c. 2mraz/paralg/ParAlg2-10.pdfjednoduchšie podúlohy, tie sa riešia paralelne a potom sa z riešení podúloh skladá riešenie celej úlohy. práca v](https://reader033.vdocuments.site/reader033/viewer/2022041613/5e39233e4e371f031559e329/html5/thumbnails/65.jpg)
Paralelné algoritmy pre vybrané funkcie
Pocítanie funkcií prev a last
prev:n2 tímov – tím zodpovedá dvojici < i , j >, 1 ≤ i , j ≤ nkaždý tím má komunikacný register v spolocnej pamäti; tenmanažér tímu inicializuje na 0k -ty procesor, j < k < i (ostatné nepracujú) overí, ci xk 6= xi , ak zistírovnost’, tak do komunikacného registra zapíše 1manažér skontroluje komunikacný register tímu, ak je tam 0 axi = xj tak do r i zapíše j
Pocet proc. Cas Šírka slova Modeln3 O(1) O(log n) COMMON
František Mráz (KSVI MFF UK) Paralelné algoritmy, cast’ c. 2 Paralelné algoritmy, 2009/2010 14 / 17
![Page 66: Paralelné algoritmy, cast c. 2mraz/paralg/ParAlg2-10.pdfjednoduchšie podúlohy, tie sa riešia paralelne a potom sa z riešení podúloh skladá riešenie celej úlohy. práca v](https://reader033.vdocuments.site/reader033/viewer/2022041613/5e39233e4e371f031559e329/html5/thumbnails/66.jpg)
Paralelné algoritmy pre vybrané funkcie
Pocítanie funkcií prev a last
prev:n2 tímov – tím zodpovedá dvojici < i , j >, 1 ≤ i , j ≤ nkaždý tím má komunikacný register v spolocnej pamäti; tenmanažér tímu inicializuje na 0k -ty procesor, j < k < i (ostatné nepracujú) overí, ci xk 6= xi , ak zistírovnost’, tak do komunikacného registra zapíše 1manažér skontroluje komunikacný register tímu, ak je tam 0 axi = xj tak do r i zapíše j
Pocet proc. Cas Šírka slova Modeln3 O(1) O(log n) COMMON
František Mráz (KSVI MFF UK) Paralelné algoritmy, cast’ c. 2 Paralelné algoritmy, 2009/2010 14 / 17
![Page 67: Paralelné algoritmy, cast c. 2mraz/paralg/ParAlg2-10.pdfjednoduchšie podúlohy, tie sa riešia paralelne a potom sa z riešení podúloh skladá riešenie celej úlohy. práca v](https://reader033.vdocuments.site/reader033/viewer/2022041613/5e39233e4e371f031559e329/html5/thumbnails/67.jpg)
Paralelné algoritmy pre vybrané funkcie
Pocítanie funkcií prev a last
prev:n2 tímov – tím zodpovedá dvojici < i , j >, 1 ≤ i , j ≤ nkaždý tím má komunikacný register v spolocnej pamäti; tenmanažér tímu inicializuje na 0k -ty procesor, j < k < i (ostatné nepracujú) overí, ci xk 6= xi , ak zistírovnost’, tak do komunikacného registra zapíše 1manažér skontroluje komunikacný register tímu, ak je tam 0 axi = xj tak do r i zapíše j
Pocet proc. Cas Šírka slova Modeln3 O(1) O(log n) COMMON
František Mráz (KSVI MFF UK) Paralelné algoritmy, cast’ c. 2 Paralelné algoritmy, 2009/2010 14 / 17
![Page 68: Paralelné algoritmy, cast c. 2mraz/paralg/ParAlg2-10.pdfjednoduchšie podúlohy, tie sa riešia paralelne a potom sa z riešení podúloh skladá riešenie celej úlohy. práca v](https://reader033.vdocuments.site/reader033/viewer/2022041613/5e39233e4e371f031559e329/html5/thumbnails/68.jpg)
Paralelné algoritmy pre vybrané funkcie
Pocítanie funkcií prev a last
prev:n2 tímov – tím zodpovedá dvojici < i , j >, 1 ≤ i , j ≤ nkaždý tím má komunikacný register v spolocnej pamäti; tenmanažér tímu inicializuje na 0k -ty procesor, j < k < i (ostatné nepracujú) overí, ci xk 6= xi , ak zistírovnost’, tak do komunikacného registra zapíše 1manažér skontroluje komunikacný register tímu, ak je tam 0 axi = xj tak do r i zapíše j
Pocet proc. Cas Šírka slova Modeln3 O(1) O(log n) COMMON
František Mráz (KSVI MFF UK) Paralelné algoritmy, cast’ c. 2 Paralelné algoritmy, 2009/2010 14 / 17
![Page 69: Paralelné algoritmy, cast c. 2mraz/paralg/ParAlg2-10.pdfjednoduchšie podúlohy, tie sa riešia paralelne a potom sa z riešení podúloh skladá riešenie celej úlohy. práca v](https://reader033.vdocuments.site/reader033/viewer/2022041613/5e39233e4e371f031559e329/html5/thumbnails/69.jpg)
Paralelné algoritmy pre vybrané funkcie
Pocítanie funkcií prev a last
prev:n2 tímov – tím zodpovedá dvojici < i , j >, 1 ≤ i , j ≤ nkaždý tím má komunikacný register v spolocnej pamäti; tenmanažér tímu inicializuje na 0k -ty procesor, j < k < i (ostatné nepracujú) overí, ci xk 6= xi , ak zistírovnost’, tak do komunikacného registra zapíše 1manažér skontroluje komunikacný register tímu, ak je tam 0 axi = xj tak do r i zapíše j
Pocet proc. Cas Šírka slova Modeln3 O(1) O(log n) COMMON
František Mráz (KSVI MFF UK) Paralelné algoritmy, cast’ c. 2 Paralelné algoritmy, 2009/2010 14 / 17
![Page 70: Paralelné algoritmy, cast c. 2mraz/paralg/ParAlg2-10.pdfjednoduchšie podúlohy, tie sa riešia paralelne a potom sa z riešení podúloh skladá riešenie celej úlohy. práca v](https://reader033.vdocuments.site/reader033/viewer/2022041613/5e39233e4e371f031559e329/html5/thumbnails/70.jpg)
Paralelné algoritmy pre vybrané funkcie
Pocítanie funkcií prev a last
prev:n2 tímov – tím zodpovedá dvojici < i , j >, 1 ≤ i , j ≤ nkaždý tím má komunikacný register v spolocnej pamäti; tenmanažér tímu inicializuje na 0k -ty procesor, j < k < i (ostatné nepracujú) overí, ci xk 6= xi , ak zistírovnost’, tak do komunikacného registra zapíše 1manažér skontroluje komunikacný register tímu, ak je tam 0 axi = xj tak do r i zapíše j
Pocet proc. Cas Šírka slova Modeln3 O(1) O(log n) COMMON
František Mráz (KSVI MFF UK) Paralelné algoritmy, cast’ c. 2 Paralelné algoritmy, 2009/2010 14 / 17
![Page 71: Paralelné algoritmy, cast c. 2mraz/paralg/ParAlg2-10.pdfjednoduchšie podúlohy, tie sa riešia paralelne a potom sa z riešení podúloh skladá riešenie celej úlohy. práca v](https://reader033.vdocuments.site/reader033/viewer/2022041613/5e39233e4e371f031559e329/html5/thumbnails/71.jpg)
Paralelné algoritmy pre vybrané funkcie
Pocítanie súctu n císel
Oznacenie: Nech T (n,P(n)) je cas potrebný na výpocet súctu ncísel (konecnej alebo nekonecnej) pologrupy pomocou P(n)procesorov na modele COMMON PRAM. [Namiesto T (n,n)budeme písat’ T (n).]
DefiníciaHovoríme, že f : Z→ Z je konštruovatel’ná v konštantnom case, akCOMMON PRAM s n procesormi môže spocítat’ f (n) zo vstupu n vkonštantnom case.
s rozšírenou sadou aritmetických inštrukcií sú polynómy, log n,odmocniny, . . . konštruovatel’né v konštantnom case.
František Mráz (KSVI MFF UK) Paralelné algoritmy, cast’ c. 2 Paralelné algoritmy, 2009/2010 15 / 17
![Page 72: Paralelné algoritmy, cast c. 2mraz/paralg/ParAlg2-10.pdfjednoduchšie podúlohy, tie sa riešia paralelne a potom sa z riešení podúloh skladá riešenie celej úlohy. práca v](https://reader033.vdocuments.site/reader033/viewer/2022041613/5e39233e4e371f031559e329/html5/thumbnails/72.jpg)
Paralelné algoritmy pre vybrané funkcie
Pocítanie súctu n císel
Oznacenie: Nech T (n,P(n)) je cas potrebný na výpocet súctu ncísel (konecnej alebo nekonecnej) pologrupy pomocou P(n)procesorov na modele COMMON PRAM. [Namiesto T (n,n)budeme písat’ T (n).]
DefiníciaHovoríme, že f : Z→ Z je konštruovatel’ná v konštantnom case, akCOMMON PRAM s n procesormi môže spocítat’ f (n) zo vstupu n vkonštantnom case.
s rozšírenou sadou aritmetických inštrukcií sú polynómy, log n,odmocniny, . . . konštruovatel’né v konštantnom case.
František Mráz (KSVI MFF UK) Paralelné algoritmy, cast’ c. 2 Paralelné algoritmy, 2009/2010 15 / 17
![Page 73: Paralelné algoritmy, cast c. 2mraz/paralg/ParAlg2-10.pdfjednoduchšie podúlohy, tie sa riešia paralelne a potom sa z riešení podúloh skladá riešenie celej úlohy. práca v](https://reader033.vdocuments.site/reader033/viewer/2022041613/5e39233e4e371f031559e329/html5/thumbnails/73.jpg)
Paralelné algoritmy pre vybrané funkcie
Pocítanie súctu n císel
Oznacenie: Nech T (n,P(n)) je cas potrebný na výpocet súctu ncísel (konecnej alebo nekonecnej) pologrupy pomocou P(n)procesorov na modele COMMON PRAM. [Namiesto T (n,n)budeme písat’ T (n).]
DefiníciaHovoríme, že f : Z→ Z je konštruovatel’ná v konštantnom case, akCOMMON PRAM s n procesormi môže spocítat’ f (n) zo vstupu n vkonštantnom case.
s rozšírenou sadou aritmetických inštrukcií sú polynómy, log n,odmocniny, . . . konštruovatel’né v konštantnom case.
František Mráz (KSVI MFF UK) Paralelné algoritmy, cast’ c. 2 Paralelné algoritmy, 2009/2010 15 / 17
![Page 74: Paralelné algoritmy, cast c. 2mraz/paralg/ParAlg2-10.pdfjednoduchšie podúlohy, tie sa riešia paralelne a potom sa z riešení podúloh skladá riešenie celej úlohy. práca v](https://reader033.vdocuments.site/reader033/viewer/2022041613/5e39233e4e371f031559e329/html5/thumbnails/74.jpg)
Paralelné algoritmy pre vybrané funkcie
Pocítanie súctu n císel
LemmaNech f : N→ N, f (n) ≤ n, pre všetky n ≥ 0, je konštruovatel’ná v konštantnomcase. Potom
T (n) ≤ T(⌈
nf (n)
⌉)+ T (f (n),n) + O(1) .
Dôkaz: vstup n císel, n procesorovspocítame f (n); procesory rozdelíme do f (n) tímov po maximálne d n
f (n)eprocesorochkaždý tím scíta svoje vstupy v case T (d n
f (n)e)Predpokladáme, že T (n) je monotónna neklesajúca funkcia. Dostanene f (n)ciastocných súctov, ktoré sa dajú scítat’ v case T (f (n),n)pre f (n) = O(log n) sa súcet n císel v konecnej pologrupe dá spocítat’ v caseO( log n
log log n ) s použitím n procesorov.
František Mráz (KSVI MFF UK) Paralelné algoritmy, cast’ c. 2 Paralelné algoritmy, 2009/2010 16 / 17
![Page 75: Paralelné algoritmy, cast c. 2mraz/paralg/ParAlg2-10.pdfjednoduchšie podúlohy, tie sa riešia paralelne a potom sa z riešení podúloh skladá riešenie celej úlohy. práca v](https://reader033.vdocuments.site/reader033/viewer/2022041613/5e39233e4e371f031559e329/html5/thumbnails/75.jpg)
Paralelné algoritmy pre vybrané funkcie
Pocítanie súctu n císel
LemmaNech f : N→ N, f (n) ≤ n, pre všetky n ≥ 0, je konštruovatel’ná v konštantnomcase. Potom
T (n) ≤ T(⌈
nf (n)
⌉)+ T (f (n),n) + O(1) .
Dôkaz: vstup n císel, n procesorovspocítame f (n); procesory rozdelíme do f (n) tímov po maximálne d n
f (n)eprocesorochkaždý tím scíta svoje vstupy v case T (d n
f (n)e)Predpokladáme, že T (n) je monotónna neklesajúca funkcia. Dostanene f (n)ciastocných súctov, ktoré sa dajú scítat’ v case T (f (n),n)pre f (n) = O(log n) sa súcet n císel v konecnej pologrupe dá spocítat’ v caseO( log n
log log n ) s použitím n procesorov.
František Mráz (KSVI MFF UK) Paralelné algoritmy, cast’ c. 2 Paralelné algoritmy, 2009/2010 16 / 17
![Page 76: Paralelné algoritmy, cast c. 2mraz/paralg/ParAlg2-10.pdfjednoduchšie podúlohy, tie sa riešia paralelne a potom sa z riešení podúloh skladá riešenie celej úlohy. práca v](https://reader033.vdocuments.site/reader033/viewer/2022041613/5e39233e4e371f031559e329/html5/thumbnails/76.jpg)
Paralelné algoritmy pre vybrané funkcie
Pocítanie súctu n císel
LemmaNech f : N→ N, f (n) ≤ n, pre všetky n ≥ 0, je konštruovatel’ná v konštantnomcase. Potom
T (n) ≤ T(⌈
nf (n)
⌉)+ T (f (n),n) + O(1) .
Dôkaz: vstup n císel, n procesorovspocítame f (n); procesory rozdelíme do f (n) tímov po maximálne d n
f (n)eprocesorochkaždý tím scíta svoje vstupy v case T (d n
f (n)e)Predpokladáme, že T (n) je monotónna neklesajúca funkcia. Dostanene f (n)ciastocných súctov, ktoré sa dajú scítat’ v case T (f (n),n)pre f (n) = O(log n) sa súcet n císel v konecnej pologrupe dá spocítat’ v caseO( log n
log log n ) s použitím n procesorov.
František Mráz (KSVI MFF UK) Paralelné algoritmy, cast’ c. 2 Paralelné algoritmy, 2009/2010 16 / 17
![Page 77: Paralelné algoritmy, cast c. 2mraz/paralg/ParAlg2-10.pdfjednoduchšie podúlohy, tie sa riešia paralelne a potom sa z riešení podúloh skladá riešenie celej úlohy. práca v](https://reader033.vdocuments.site/reader033/viewer/2022041613/5e39233e4e371f031559e329/html5/thumbnails/77.jpg)
Paralelné algoritmy pre vybrané funkcie
Pocítanie súctu n císel
LemmaNech f : N→ N, f (n) ≤ n, pre všetky n ≥ 0, je konštruovatel’ná v konštantnomcase. Potom
T (n) ≤ T(⌈
nf (n)
⌉)+ T (f (n),n) + O(1) .
Dôkaz: vstup n císel, n procesorovspocítame f (n); procesory rozdelíme do f (n) tímov po maximálne d n
f (n)eprocesorochkaždý tím scíta svoje vstupy v case T (d n
f (n)e)Predpokladáme, že T (n) je monotónna neklesajúca funkcia. Dostanene f (n)ciastocných súctov, ktoré sa dajú scítat’ v case T (f (n),n)pre f (n) = O(log n) sa súcet n císel v konecnej pologrupe dá spocítat’ v caseO( log n
log log n ) s použitím n procesorov.
František Mráz (KSVI MFF UK) Paralelné algoritmy, cast’ c. 2 Paralelné algoritmy, 2009/2010 16 / 17
![Page 78: Paralelné algoritmy, cast c. 2mraz/paralg/ParAlg2-10.pdfjednoduchšie podúlohy, tie sa riešia paralelne a potom sa z riešení podúloh skladá riešenie celej úlohy. práca v](https://reader033.vdocuments.site/reader033/viewer/2022041613/5e39233e4e371f031559e329/html5/thumbnails/78.jpg)
Paralelné algoritmy pre vybrané funkcie
Pocítanie maxima
n2 procesorov – cas O(1)
n procesorov – cas O(log n)
pre f (n) =√
n
T (n) ≤ T (√
n) + T (√
n,n) + O(1) = T (√
n) + O(1) ≤ O(log log n)
s n1+ 1k procesormi, pre nejakú konštantu k ≥ 1, a f (n) =
√n sa
hlbka rekurzie obmedzí na log k – konštantný cas
František Mráz (KSVI MFF UK) Paralelné algoritmy, cast’ c. 2 Paralelné algoritmy, 2009/2010 17 / 17
![Page 79: Paralelné algoritmy, cast c. 2mraz/paralg/ParAlg2-10.pdfjednoduchšie podúlohy, tie sa riešia paralelne a potom sa z riešení podúloh skladá riešenie celej úlohy. práca v](https://reader033.vdocuments.site/reader033/viewer/2022041613/5e39233e4e371f031559e329/html5/thumbnails/79.jpg)
Paralelné algoritmy pre vybrané funkcie
Pocítanie maxima
n2 procesorov – cas O(1)
n procesorov – cas O(log n)
pre f (n) =√
n
T (n) ≤ T (√
n) + T (√
n,n) + O(1) = T (√
n) + O(1) ≤ O(log log n)
s n1+ 1k procesormi, pre nejakú konštantu k ≥ 1, a f (n) =
√n sa
hlbka rekurzie obmedzí na log k – konštantný cas
František Mráz (KSVI MFF UK) Paralelné algoritmy, cast’ c. 2 Paralelné algoritmy, 2009/2010 17 / 17
![Page 80: Paralelné algoritmy, cast c. 2mraz/paralg/ParAlg2-10.pdfjednoduchšie podúlohy, tie sa riešia paralelne a potom sa z riešení podúloh skladá riešenie celej úlohy. práca v](https://reader033.vdocuments.site/reader033/viewer/2022041613/5e39233e4e371f031559e329/html5/thumbnails/80.jpg)
Paralelné algoritmy pre vybrané funkcie
Pocítanie maxima
n2 procesorov – cas O(1)
n procesorov – cas O(log n)
pre f (n) =√
n
T (n) ≤ T (√
n) + T (√
n,n) + O(1) = T (√
n) + O(1) ≤ O(log log n)
s n1+ 1k procesormi, pre nejakú konštantu k ≥ 1, a f (n) =
√n sa
hlbka rekurzie obmedzí na log k – konštantný cas
František Mráz (KSVI MFF UK) Paralelné algoritmy, cast’ c. 2 Paralelné algoritmy, 2009/2010 17 / 17
![Page 81: Paralelné algoritmy, cast c. 2mraz/paralg/ParAlg2-10.pdfjednoduchšie podúlohy, tie sa riešia paralelne a potom sa z riešení podúloh skladá riešenie celej úlohy. práca v](https://reader033.vdocuments.site/reader033/viewer/2022041613/5e39233e4e371f031559e329/html5/thumbnails/81.jpg)
Paralelné algoritmy pre vybrané funkcie
Pocítanie maxima
n2 procesorov – cas O(1)
n procesorov – cas O(log n)
pre f (n) =√
n
T (n) ≤ T (√
n) + T (√
n,n) + O(1) = T (√
n) + O(1) ≤ O(log log n)
s n1+ 1k procesormi, pre nejakú konštantu k ≥ 1, a f (n) =
√n sa
hlbka rekurzie obmedzí na log k – konštantný cas
František Mráz (KSVI MFF UK) Paralelné algoritmy, cast’ c. 2 Paralelné algoritmy, 2009/2010 17 / 17