Zobrazit minimální záznam

Profiler for the R programming language



dc.contributor.advisorKřikava Filip
dc.contributor.authorKarolina Hrnčiříková
dc.date.accessioned2024-06-18T14:25:15Z
dc.date.available2024-06-18T14:25:15Z
dc.date.issued2024-06-06
dc.identifierKOS-1243582226405
dc.identifier.urihttp://hdl.handle.net/10467/115325
dc.description.abstractJazyk R vyniká v průzkumu a analýze dat, ale často čelí výzvám v oblasti efektivity. R je dynamicky typováno, má automatický sběr paměti a co je nejdůležitější, jedna z jeho hlavních implementací, GNU R, interpretuje AST v kombinaci s kompilací just-in-time do bajtkódu. Všechny tyto faktory přispívají k tomu, že R je poměrně pomalý jazyk. Pro zlepšení výkonu jsou uživatelé nuceni přepisovat kód citlivý na výkon v C, C++ nebo ve Fortranu prostřednictvím balíčků. Zjistit, které segmenty kódu jsou pomalé, protože jsou prováděny v interpretu R, však není snadné, protože současné metody profilování nerozlišují mezi prováděním kódu nativně a v R. V této práci navrhujeme profiler, který dokáže rozlišit R a nativní vykonávání kódu. Inspirováni Scalene, profilerem pro Python, implementujeme do GNU R 4.3.3 prototyp našeho profileru. Profiler hodnotíme ve srovnání s Rprof, nejpoužívanějším R profilerem. V této práci navrhujeme profiler, který dokáže rozlišit R a nativní vykonávání kódu. Inspirováni Scalene, profilerem pro Python, implementujeme do GNU R 4.3.3 prototyp našeho profileru. Profiler hodnotíme ve srovnání s Rprof, nejpoužívanějším R profilerem.cze
dc.description.abstractThe R language excels in data exploration and analysis but often faces challenges regarding execution speed and efficiency. R is dynamically typed, has automatic memory collection, and, most importantly, one of its main implementations, GNU R, interprets AST in combination with just-in-time compilation into bytecode. All these factors contribute to R being a comparatively slow language. To improve performance, users are forced to rewrite performance-sensitive code in C, C++, or Fortran through packages. However, finding out which code segments are slow because they are executed in the R interpreter is not easy because the current profiling methods do not distinguish between native and R execution. In this thesis, we propose a profiler that can distinguish between R and native execution. Inspired by Scalene, a profiler for Python, we implement a proof-of-concept profiler into GNU R 4.3.3. We evaluate the profiler in comparison to Rprof, the most used R profiler.eng
dc.publisherČeské vysoké učení technické v Praze. Vypočetní a informační centrum.cze
dc.publisherCzech Technical University in Prague. Computing and Information Centre.eng
dc.rightsA university thesis is a work protected by the Copyright Act. Extracts, copies and transcripts of the thesis are allowed for personal use only and at one?s own expense. The use of thesis should be in compliance with the Copyright Act http://www.mkcr.cz/assets/autorske-pravo/01-3982006.pdf and the citation ethics http://knihovny.cvut.cz/vychova/vskp.htmleng
dc.rightsVysokoškolská závěrečná práce je dílo chráněné autorským zákonem. Je možné pořizovat z něj na své náklady a pro svoji osobní potřebu výpisy, opisy a rozmnoženiny. Jeho využití musí být v souladu s autorským zákonem http://www.mkcr.cz/assets/autorske-pravo/01-3982006.pdf a citační etikou http://knihovny.cvut.cz/vychova/vskp.htmlcze
dc.subjectprofilovánícze
dc.subjectRcze
dc.subjectGNU Rcze
dc.subjectvzorkovánícze
dc.subjectinterpretcze
dc.subjectSEXPcze
dc.subjectScalenecze
dc.subjectRprofcze
dc.subjectprofilingeng
dc.subjectReng
dc.subjectGNU Reng
dc.subjectsamplingeng
dc.subjectinterpretereng
dc.subjectSEXPeng
dc.subjectScaleneeng
dc.subjectRprofeng
dc.titleProfiler pro programovací jazyk Rcze
dc.titleProfiler for the R programming languageeng
dc.typediplomová prácecze
dc.typemaster thesiseng
dc.contributor.refereePetříček Tomáš
theses.degree.disciplineSystémové programovánícze
theses.degree.grantorkatedra teoretické informatikycze
theses.degree.programmeInformatikacze


Soubory tohoto záznamu




Tento záznam se objevuje v následujících kolekcích

Zobrazit minimální záznam