www.wikidata.uk-ua.nina.az
Profilyuvannya zbir ta analiz informaciyi pro vikonannya programi z metoyu optimizaciyi yiyi roboti zastosovuyetsya v procesi rozrobki programnogo zabezpechennya Profilyuvannya forma analizu dinamichnih pokaznikiv programi v protilezhnist statichnomu analizu kodu Zvichajna zadacha analizu produktivnosti viznachiti chastini programi yaki slid optimizuvati dlya pokrashennya vikoristannya pam yati abo pidvishennya shvidkosti Profilyuvannya vikonuyetsya za dopomogoyu specialnih programnih zasobiv sho nazivayutsya profajlerami Zmist 1 Vikoristannya profajleriv 2 Istoriya 3 Tipi profajleriv osnovanih na vivodi 3 1 Flat profajler 3 2 Call Graph profajler 4 Metodi zboru danih 4 1 Profajleri zasnovani na podiyah 4 2 Statistichni profajleri 4 3 Instrumenti 5 Div takozh 6 LiteraturaVikoristannya profajleriv red Instrumenti programnogo analizu kritichno vazhlivi dlya rozuminnya povedinki programi Komp yuternim arhitektoram potribni taki instrumenti abi ociniti yak horoshi programi vikonuvatimutsya na novij arhitekturi Avtoram programnogo zabezpechennya takozh potribni instrumenti abi proanalizuvati yih programi i identifikuvati kritichni chastini kodu Avtori kompilyatoriv chasto vikoristovuyut taki instrumenti abi z yasuvati yak dobre vikonuyetsya yih planuvannya instrukcij abo algoritm peredbachennya sho vidgaluzhuyetsya Profajler instrument analizu produktivnosti yakij zbiraye dani dlya profilyuvannya osoblivo kilkist viklikiv i trivalist vikonannya funkcij Vihidnij rezultat potik zapisanih podij a trace abo statistichnij korotkij zvit sposterezhuvanih podij a profile Profajleri vikoristovuyut shiroku riznomanitnist metodiv abi zibrati dani u tomu chisli aparatni pererivannya aparatnu pidtrimku pastki operacijnoyi sistemi Vikoristannya profajleriv potribne v procesi planuvannya produktivnosti Oskilki pidsumovuvannya v profajli pov yazano z poziciyeyu vihidnogo kodu rozmir vihidnih danih linijno zalezhit vid rozmiru kodu programi ta mozhe zalezhati vid chasu yiyi vikonannya Dlya odnopotokovih program profajl nadaye dostatno informaciyi dlya optimizaciyi ale problemi produktivnosti v bagatopotokovih programah cherez ochikuvalni povidomlennya abo problemi sinhronizaciyi chasto zalezhat vid vzayemozv yazku chasu viniknennya podij tomu vimagayut rozshirenogo zapisu profajlu shob zrozumiti problemu Istoriya red Instrumenti analizu produktivnosti isnuvali na platformah IBM 360 i IBM 370 vid pochatku 1970 h rokiv Ci instrumenti zazvichaj vikoristovuvali pererivannya tajmera yaki zapisuvali PSW angl Program Status Word Slovo Stanu Procesora v viznacheni promizhki chasu abi viyaviti garyachi miscya u vikonuvanomu kodi V 1974 roci Imitatori Sistemi Komand nadali povnij zapis i inshi mozhlivosti kontrolyu produktivnosti Vikonuvanij profajlerom analiz programi na Unix datuyetsya yak minimum 1979 rokom koli dlya sistem Unix bulo rozrobleno osnovnij instrument prof yakij vivodiv spisok viklikiv kozhnoyi funkciyi i trivalist yiyi vikonannya U 1982 roci gprof rozshiriv profilyuvannya do povnogo analizu grafu vikliku U 1994 roci Amitab Srivastava i Alan Yustas z Digital Equipment Corporation vidali dokument sho opisuye ATOM ATOM platforma dlya peretvorennya programi na yiyi vlasnij profajler Tobto pid chas kompilyaciyi vona vstavlyaye v programu specialnij kod dlya zbirannya informaciyi pro podiyi v programi Cya tehnika sho zminyuye programu dlya analizu vidoma yak instrumentation Tipi profajleriv osnovanih na vivodi red Flat profajler red Flat profajleri obchislyuyut serednij chas vikliku funkcij i ne pererivayut vikliki zasnovani na callee abo konteksti Call Graph profajler red Call Graph profajleri pokazuyut chasi vikliku i chastoti funkcij a takozh lancyugi viklikiv zasnovanih na callee Prote ne zberigayut kontekst Metodi zboru danih red Profajleri zasnovani na podiyah red Movi programuvannya perelicheni tut mayut profajleri zasnovani na podiyah NET Mozhe prikripiti profilyuvalnogo agenta yak server COM do CLR Podibno do Java chas vikonannya potim zabezpechuye rizni povtorni vikliki v agentovi dlya perehoplennya podij podibno do metodu JIT vvedennya vihid stvorennya ob yektiv i t p Osoblivo potuzhnij v comu agent profilyuvannya mozhe perepisati kod cilovoyi programi dovilnim sposobom Java JVM Tools Interface kolis JVM Profiling Interface JVM API zabezpechuye pastki do profajleru dlya zamanyuvannya v pastku podij takih yak viklikiv zavantazhennya klasu vivantazhennya vhid vihid potoku Python profilyuvannya Python vklyuchaye modul profilyuvannya hotshot yakij ye zasnovanim na call graph i vikoristovuyuchi Sys setprofile modul do podij pastok podibno do c call return exception python call return exception Ruby Ruby takozh vikoristovuye podibnij do Python interfejs dlya profilyuvannya Ye flat profajler v profile rb modul i ruby prof C rozshirennya Statistichni profajleri red Deyaki profajleri operuyut zdijsnennyam vibirki Profajler sho zdijsnyuye vibirku doslidzhuye lichilnik komand cilovoyi programi z regulyarnimi promizhkami vikoristovuyuchi pererivannya operacijnoyi sistemi Profajleri sho zdijsnyuyut vibirku zazvichaj mensh tochni i specifichni ale dozvolyayut cilovij programi pracyuvati majzhe na povnu shvidkist Deyaki profajleri nadayut cilovij programi dodatkovi komandi zbirati neobhidnu informaciyu Ce mozhe prizvoditi do zmin u vikonanni programi viklikayuchi neakuratni rezultati i pomilki Ce mozhe buti duzhe specifichnim ale upovilnyuye cilovu programu oskilki bilshe specifichnoyi informaciyi zbirayetsya Rezultativni dani ne ostatochna istina a statistichna aproksimaciya Faktichna kilkist pomilok zazvichaj bilsha nizh odin vibranij period vibirki Faktichno yaksho znachennya n raziv periodu vibirki ochikuvana pomilka v nomu korin kvadratnij z vibranih periodiv Deyaki z najbilsh vikoristovuvanih statistichnih profajleriv ce GNU s gprof Oprofile AMD s CodeAnalyst ta SGI s Pixie Instrumenti red Instrukciya Robitsya programistom napriklad dodayuchi komandi abi yavno obchisliti chasi vikonannya Dopomizhnij kompilyator Priklad gcc pg dlya gprof quantify g dlya Quantify Binarna translyaciya instrument dodaye instrumentaciyu v skompilovanij binarnij fajl Priklad ATOM Instrumentaciya vikonannya Bezposeredno pered vikonannyam kod instrumentuyetsya Programna diya povnistyu kontrolyuyetsya i upravlyayetsya instrumentom Prikladi PIN Valgrind In yekciya vikonannya Legshe nizh instrumentaciya vikonannya Kod zminyuyetsya v chasi vikonannya abi mati perehodi do dopomizhnih funkcij Priklad DynInst Gipervajzer Dani zbirayutsya vikonannyam zazvichaj nezminenoyi programi pid upravlinnyam gipervajzera Priklad SIMMON Simulyator Dani zbirayutsya vikonannyam pid upravlinnyam Simulyatora Sistemi Komand Prikladi SIMMON SIMON i OLIVER Div takozh red SIGPROF Profilyuvannya danihLiteratura red Krauss Kirk J 2017 Performance Profiling with a Focus Develop for Performance What is code profiling Learn the 3 Types of Code Profilers Stackify Developer Tips Tricks and Resources Disqus 2016 Cya stattya ne mistit posilan na dzherela Vi mozhete dopomogti polipshiti cyu stattyu dodavshi posilannya na nadijni avtoritetni dzherela Material bez dzherel mozhe buti piddano sumnivu ta vilucheno zhovten 2015 Cyu stattyu treba vikifikuvati dlya vidpovidnosti standartam yakosti Vikipediyi Bud laska dopomozhit dodavannyam dorechnih vnutrishnih posilan abo vdoskonalennyam rozmitki statti zhovten 2015 Otrimano z https uk wikipedia org w index php title Profilyuvannya programuvannya amp oldid 38682050