www.wikidata.uk-ua.nina.az
Rozpodilom registriv u procesi kompilyaciyi 1 nazivayut vidobrazhennya mnozhini velikogo chisla zminnih fragmenta komp yuternoyi programi virtualnih registriv promizhnogo podannya na yak pravilo neveliku mnozhinu fizichnih registriv procesora Rozpodil registriv mozhe vikonuvatisya v okremo vzyatomu bazovomu bloci lokalnij rozpodil registriv abo u vsij proceduri globalnij rozpodil registriv Yak pravilo komp yuternim programam dovoditsya pracyuvati z velikoyu kilkistyu danih prote bilshist mikroprocesoriv pidtrimuye operaciyi tilki na fiksovanomu chisli nevelikih komirok zvanih registrami Deyaki procesori dozvolyayut vikoristovuvati operandi sho zberigayutsya v pam yati odnak zvernennya do registriv vidbuvayetsya znachno shvidshe nizh zvernennya do pam yati navit z urahuvannyam togo sho zaznachena dilyanka pam yati mozhe mistitisya v keshi Zmist 1 Problemi 2 Globalnij rozpodil registriv 3 Primitki 4 PosilannyaProblemi RedaguvatiZadacha rozpodilu registriv ye NP povnoyu 2 3 Zazvichaj kilkist zminnih u programi znachno perevershuye kilkist dostupnih fizichnih registriv tomu deyaki zminni dovoditsya zberigati v lokalnomu steku Zvernennya do pam yati mozhna minimizuvati yaksho zberigati tam najridshe vikoristovuvani zminni prote viznachiti yaki zminni vikoristovuyutsya najridshe ne zavzhdi legko Krim togo deyaki registri chasto mayut sistemne abo sluzhbove priznachennya i yih vikoristannya obmezhene Globalnij rozpodil registriv RedaguvatiYak i bilshist inshih optimizacij rozpodil registriv bazuyetsya na vikoristanni deyakogo analizu V comu vipadku ce najchastishe analiz chasu zhittya zminnih i analiz potoku danih Tradicijnim algoritmom rozpodilu registriv vvazhayetsya rozfarbovuvannya grafu nesumisnosti zaproponovane matematikom Gregori Hajtinom Kozhnij zminnij simvolnomu registru vidpovidaye vuzol N displaystyle N nbsp grafa G displaystyle G nbsp Yaksho chasi zhittya zminnih peretinayutsya vidpovidni yim vuzli z yednuyut dugoyu Graf potribno rozfarbuvati R displaystyle R nbsp kolorami de R displaystyle R nbsp vidpovidaye kilkosti dostupnih fizichnih registriv tak shob zhodna para susidnih vuzliv ne mala odnakovogo koloru Stepenem vuzla grafa nazivayetsya kilkist jogo susidiv Yaksho stepin vuzla grafa menshe R displaystyle R nbsp to dlya nogo zavzhdi mozhna znajti kolir ne priznachenij zhodnomu iz susidiv Yaksho vsi vuzli mayut stepin bilshe R displaystyle R nbsp odna zi zminnih zberigayetsya v pam yati i utvoryuyetsya kilka vuzliv menshogo stepenya Poki graf G ne mozhna rozfarbuvati R kolorami Iterativno vidalyati vsi vuzli grafa zi stepenem lt R pomishayuchi yih u stek Yaksho vsi vuzli grafa vidaleno graf mozhna rozfarbuvati R kolorami Vishtovhnuti vuzol N zi steka i dodati jogo v graf priznachivshi jomu kolir V inshomu vipadku graf G ne mozhna rozfarbuvati R kolorami Sprostiti G vibravshi vuzol dlya zberezhennya v pam yati i rozbivshi jogo na kilka vuzliv vuzol dlya zberezhennya v pam yati vibirayetsya evristichno Preston Briggs Preston Briggs zaproponuvav modifikuvati algoritm Hajtina 4 vidkladayuchi zberezhennya zminnoyi v pam yati do priznachennya koloriv vuzlam grafa Dlya deyakih nerozfarbovuvanih R displaystyle R nbsp kolorami grafiv ce dozvolyaye obijtisya bez zberezhennya zminnih u pam yati Napriklad kvadrat z vuzlami u vershinah mozhna rozfarbuvati R 2 displaystyle R 2 nbsp kolorami todi yak stepin usih jogo vuzliv dorivnyuye dvom i za algoritmom Hajtina dovedetsya zberegti odnu zi zminnih u pam yati Primitki Redaguvati NOU INTUIT Lekciya Vybor instrukcij pri generacii koda Arhiv originalu za 28 lipnya 2021 Procitovano 28 lipnya 2021 Gregory J Chaitin Mark A Auslander Ashok K Chandra John Cocke Martin E Hopkins and Peter W Markstein Register allocation via coloring Computer Languages 6 47 57 1981 angl Fernando Magno Quintao Pereira Jens Palsberg Register Allocation after Classical SSA Elimination is NP complete angl http pike cs ucla edu palsberg paper fossacs06 pdf Arhivovano 4 bereznya 2016 u Wayback Machine Preston Briggs Keith D Cooper Ken Kennedy Linda Torczon Coloring Heuristics for Register Allocation ACM SIGPLAN Notices Volume 24 Issue 7 275 284 1989 angl Posilannya Redaguvatihttp www intuit ru studies courses 1157 173 lecture 4707 page 5 Arhivovano 28 lipnya 2021 u Wayback Machine 7 Kompilyaciya 7 Priznachennya registriv Arhivovano 1 grudnya 2017 u Wayback Machine 2010 Karavayev D Yu Pro realizaciyu metodu rozpodilu registriv pri kompilyaciyi Arhivovano 7 lipnya 2017 u Wayback Machine RSDN 2012 Hadi Brais Optimizaciyi kompilyatorom Sho kozhen programist povinen znati pro optimizaciyi kodu kompilyatorom Chastina 2 Arhivovano 1 grudnya 2017 u Wayback Machine traven 2015 Keith Schwarz Register Allocation Arhivovano 11 travnya 2021 u Wayback Machine Stanford s cs143 Compilers 2012V inshomu movnomu rozdili ye povnisha stattya Register allocation angl Vi mozhete dopomogti rozshirivshi potochnu stattyu za dopomogoyu perekladu z anglijskoyi Divitis avtoperekladenu versiyu statti z movi anglijska Perekladach povinen rozumiti sho vidpovidalnist za kincevij vmist statti u Vikipediyi nese same avtor redaguvan Onlajn pereklad nadayetsya lishe yak korisnij instrument pereglyadu vmistu zrozumiloyu movoyu Ne vikoristovujte nevichitanij i nevidkorigovanij mashinnij pereklad u stattyah ukrayinskoyi Vikipediyi Mashinnij pereklad Google ye korisnoyu vidpravnoyu tochkoyu dlya perekladu ale perekladacham neobhidno vipravlyati pomilki ta pidtverdzhuvati tochnist perekladu a ne prosto skopiyuvati mashinnij pereklad do ukrayinskoyi Vikipediyi Ne perekladajte tekst yakij vidayetsya nedostovirnim abo neyakisnim Yaksho mozhlivo perevirte tekst za posilannyami podanimi v inshomovnij statti Dokladni rekomendaciyi div Vikipediya Pereklad Otrimano z https uk wikipedia org w index php title Rozpodil registriv amp oldid 40025063