www.wikidata.uk-ua.nina.az
Cya stattya ye sirim perekladom z anglijskoyi movi Mozhlivo vona stvorena za dopomogoyu mashinnogo perekladu abo perekladachem yakij nedostatno volodiye oboma movami Bud laska dopomozhit polipshiti pereklad serpen 2019 Cya stattya mozhe mistiti pomilki perekladu z anglijskoyi movi Bud laska dopomozhit polipshiti pereklad perevirivshi jogo yakist i pogodivshi vmist zi stilistichnimi pravilami Vikipediyi Original anglijskoyu movoyu Data dependency Zalezhnist danih v informatici ye situaciya v yakij programna zayava instrukciya vidnositsya do danih v poperednij zayavi U teoriyi kompilyaciyi metod vikoristovuyetsya dlya viyavlennya zalezhnostej danih mizh vislovlyuvannyami abo instrukciyi nazivayetsya Analiz zalezhnostej Ye tri tipi zalezhnostej dani im ya ta kontrol Zmist 1 Zalezhnist danih 1 1 Potokova zalezhnist 1 2 Antizalezhnist 1 3 Vihidna zalezhnist 2 Kontrol zalezhnostej 2 1 Pobudova upravlinnya zalezhnostyami 3 Naslidki 4 Div takozh 5 LiteraturaZalezhnist danih RedaguvatiPripuskayuchi tverdzhennya S1 i S2 S2 zalezhit vid togo S1 yaksho I S1 O S2 O S1 I S2 O S1 O S2 Ode I sm yavlyaye soboyu nabir elementiv pam yati zchituyetsya i Si O S ye bezlich oseredkiv pam yati napisana Sj i isnuye dopustimij chas vikonannya shlyahu vikonannya vid S1 do S2Cej stan nazivayetsya Bernstein stan nazvanij A Bernshtejnom Tri vipadki isnuyut Flow dani zalezhnist O S1 I S2 S1 S2 i S1 pishe pislya togo yak shos prochitanoyi S2 Antizalezhnist I S1 O S2 S1 S2 i S1 chitaye shos persh nizh S2 perepisuye jogo Vihidna zalezhnist O S1 O S2 S1 S2 i obidva napisati tu zh komirku pam yati Potokova zalezhnist Redaguvati Zalezhnist potoku takozh vidomij yak zalezhnist danih abo istinnoyi zalezhnosti abo chitannya pislya zapisu RAW vidbuvayetsya koli instrukciya zalezhit vid rezultatu poperednoyi instrukciyi 1 A 3 2 B A 3 C BInstrukciya 3 dijsno zalezhit vid instrukciyi 2 oskilki kinceve znachennya C zalezhit vid instrukciyi onovlyuyuchi B Instrukciya 2 dijsno zalezhit vid instrukciyi 1 bo ostatochne znachennya B zalezhit vid ponovlennya instrukciyi A Cherez te sho instrukciya 3 dijsno zalezhit Instrukciya po 2 i 2 instrukciyi dijsno zalezhit vid instrukciyi 1 3 instrukciya takozh dijsno zalezhit vid instrukciyi 1 paralelizm na rivni komand tomu ne variant v danomu prikladi Antizalezhnist Redaguvati Antizalezhnist takozh vidomij yak vid zapisu pislya chitannya WAR maye misce koli instrukciya vimagaye znachennya yakij piznishe buv onovlenij U nastupnomu prikladi komanda 2 antizalezhit vid instrukciyi 3 vporyadkuvannya cih instrukcij ne mozhut buti zmineni voni takozh ne mozhut buti vikonani paralelno mozhliva zmina uporyadkuvannya komand pozayak ce mozhe vplinuti na kinceve znachennya A 1 B 3 2 A B 1 3 B 7 Antizalezhnist ye prikladom imeni zalezhnosti Tobto perejmenuvannya zminnih mozhna bulo vidaliti zalezhnist yak v nastupnomu prikladi 1 B 3 N B2 B 2 A B2 1 3 B 7 Nova zminna B2 buv ogoloshenij yak kopiya B v novij instrukciyi instrukciyi N antizalezhnist mizh 2 i 3 buv vidalenij a ce oznachaye sho ci instrukciyi mozhut buti v cej chas vikonuyutsya paralelno Prote modifikaciya predstavila novu zalezhnist instrukciya 2 teper dijsno zalezhit vid instrukciyi N yakij dijsno zalezhit vid instrukciyi 1 Zalezhno potoku ci novi zalezhnosti nemozhlivo bezpechno vidaliti Vihidna zalezhnist Redaguvati Vihidna zalezhnist takozh vidoma yak zapisi pislya zapisu WAW maye misce koli vporyadkovanist instrukcij vplivatime na kinceve vihidne znachennya zminnoyi U prikladi navedenomu nizhche ye vihid zalezhnist mizh komandami 3 i 1 zmina poryadku instrukcij v comu prikladi bude zminyuvatisya kinceve znachennya A takim chinom ci instrukciyi ne mozhut buti vikonani paralelno 1 B 3 2 A B 1 3 B 7 Yak i z antizalezhnostej zalezhnostej vihidnih ye zalezhnostyami imen Tobto voni mozhut buti vidaleni za dopomogoyu perejmenuvannya zminnih yak v navedenomu nizhche modifikaciyi navedenogo vishe prikladu 1 B2 3 2 A B2 1 3 B 7 Zazvichaj vikoristovuyetsya dlya imenuvannya zalezhnostej danih ye nastupne dlya chitannya pislya zapisu abo RAW zalezhnist potoku zapis pislya zapisu abo WAW vihid zalezhnostej i Write Pislya chitannya abo WAR antizalezhnist Kontrol zalezhnostej RedaguvatiInstrukciya B maye zalezhnist upravlinnya vid poperednoyi komandi A yaksho rezultat A viznachaye chi slid vikonuvati B chi ni U nastupnomu prikladi S2 instrukciya maye zalezhnist upravlinnya po instrukciyi S1 Prote S3 ne zalezhit vid S1 S3 tomu sho zavzhdi vikonuyetsya nezalezhno vid rezultatu S1 S1 if a b S2 a a b S3 b a b Intuyitivno zrozumilo sho isnuye kontrol zalezhnist mizh dvoma tverdzhennyami A i V yaksho B mozhe buti mozhlivo pislya togo yak vikonuyetsya A Pidsumki vikonannya viznachatime chi bude vikonuvatisya B chi ni Tipovim prikladom ye te sho isnuyut keruyuchi zalezhnosti mizh stanom chastini yaksho zayavu i zayavi v jogo spravzhnih pomilkovih tel Formalne viznachennya zalezhnosti upravlinnya mozhe buti predstavlena nastupnim chinom Zayava S2 nazivayetsya upravlinnya zalezhit vid inshogo zayavu S1 todi i tilki todi isnuye shlyah P vid S1 do S2 takim chinom sho kozhne tverdzhennya Si S1 v P bude suprovodzhuvatisya S2 v kozhnomu mozhlivomu shlyahu do kincya programi ta S1 ne obov yazkovo povinni sliduvati S2 tobto ye shlyah do vikonuvanih vid S1 do kincya programi yaka ne prohodit cherez S2 Virazhenij za dopomogoyu post dominuvannya dvi umovi ekvivalentni S2 postdominuye vse Si S2 NE post S1 dominuvati nadPobudova upravlinnya zalezhnostyami Redaguvati Zalezhno upravlinnya po suti dominuvannya kordonu u zvorotnomu grafiku grafa potoku upravlinnya CFG 2 Takim chinom odin zi sposobiv yih pobudovi bulo b pobuduvati postdominantnosti kordon KTG a potim zadnim hodom jogo otrimannya kontrol graf zalezhnostej Nizhche navedeno psevdokod dlya pobudovi postdominantnosti kordonu for each X in a bottom up traversal of the dominator tree do PostDominanceFrontier X for each Y Predecessors X do if immediatePostDominator Y X then PostDominanceFrontier X PostDominanceFrontier X Y done for each Z Children X do for each Y PostDominanceFrontier Z do if immediatePostDominator Y X then PostDominanceFrontier X PostDominanceFrontier X Y done done Tut diti X ye bezlich vuzliv u CFG yaki pislya dominuyut X i Poperedniki X ye naborom vuzliv u CFG yaki bezposeredno pereduyut X u CFG Pislya togo yak postdominantnist kordonu karti obchislyuyetsya zvertaye jogo prizvede do karti vid vuzliv u CFG do vuzliv yaki mayut zalezhnist upravlinnya vid nih Naslidki RedaguvatiZvichajni programi napisani v pripushenni modeli poslidovnogo vikonannya V ramkah ciyeyi modeli instrukciyi vikonuyutsya odin za inshim atomarnomu tobto v bud yakij danij moment chasu tilki odna komanda vikonuyetsya i v poryadku zaznachenomu v programi Odnak zalezhnosti mizh zayav abo instrukcij mozhe pereshkodzhati paralelizm paralelne vikonannya dekilkoh instrukcij abo za dopomogoyu rozparalelyuvati kompilyatora abo procesorom ekspluatatorskogo na rivni instrukcij paralelizm Nerozvazhlivo vikonannya kilkoh komand bez urahuvannya pov yazanih zalezhnostej mozhe privesti do nebezpeki otrimannya nepravilnih rezultativ a same nebezpeki Div takozh RedaguvatiGraf zalezhnostejLiteratura RedaguvatiJohn L Hennessy David A Patterson Computer Architecture a quantitative approach 3rd ed Morgan Kaufmann 2003 ISBN 1 55860 724 2 angl Cytron R Ferrante J Rosen B K Wegman M N Zadeck F K 1989 01 01 An Efficient Method of Computing Static Single Assignment Form Proceedings of the 16th ACM SIGPLAN SIGACT Symposium on Principles of Programming Languages POPL 89 New York NY USA ACM 25 35 doi 10 1145 75277 75280 ISBN 0897912942 angl Otrimano z https uk wikipedia org w index php title Zalezhnist danih amp oldid 37188971