VODÁK, M. Automatické porovnávání call grafů pro GraalVM Native Image [online]. Brno: Vysoké učení technické v Brně. Fakulta informačních technologií. 2025.

Posudky

Posudek vedoucího

Kozák, David

Overall, the student performed exceptionally well, independently addressing a challenging topic and delivering a high-quality final product.

Dílčí hodnocení
Kritérium Známka Body Slovní hodnocení
Informace k zadání The topic of this bachelor's thesis was challenging and required the student to explore material beyond the scope of our bachelor's curriculum. It is connected to our ongoing effort to improve the explainability of static analysis in GraalVM Native Image, conducted in collaboration with Oracle Labs. The student performed exceptionally well, thoroughly addressing all aspects of the thesis assignment. Notably, the student contributed a patch to GraalVM Native Image, which has been merged and included in the official release. Overall, I am very satisfied with the outcome.
Práce s literaturou The student worked independently, conducted thorough literature reviews, and appropriately cited relevant sources throughout the thesis.
Aktivita během řešení, konzultace, komunikace The student demonstrated a responsible approach, consistently attended meetings, and was always well prepared.
Aktivita při dokončování The student completed both the implementation and the text of the thesis on time, allowing me to review both components without time pressure.
Publikační činnost, ocenění The resulting tool was open-sourced on GitHub and presented at Excel@FIT 2025.
Navrhovaná známka
A
Body
95

Posudek oponenta

Vojnar, Tomáš

Studentovo realizační dílo je dosti komplexní, zdařilé a reálně využitelné (resp. představující velmi solidní základ reálně využitelného nástroje). Technická zpráva je přes mé některé drobné výhrady také velmi zdařilá. Práce byla rovněž prezentována na studentské konferenci Excel@FIT.  

Dílčí hodnocení
Kritérium Známka Body Slovní hodnocení
Náročnost zadání Náročnost zadaní spatřuji v kombinaci problematiky z různých oblastí, od překladačů a grafových algoritmů po interaktivní uživatelská rozhraní.
Rozsah splnění požadavků zadání
Rozsah technické zprávy
Prezentační úroveň technické zprávy 88 Práce je strukturována logicky, jednotlivé části na sebe dobře navazují a povětšinou velmi vhodně prezentují jak východiska práce, tak navržené řešení, jeho implementaci i vyhodnocení. Narazil jsem jen na několik málo míst, kde jsem si nebyl jist významem textu. Příkladem takových míst jsou popis rozdílů dvou diskutovaných přístupů na konci strany 11 (kde se mluví mj. o sémantice, ale nejsem si jist, zda autorův přístup opravdu bere do úvahy sémantiku), použití neorientovaného grafu v obrázku 3.1 (přičemž graf volání by měl být podle mě orientovaný) či obsah prvního odstavce sekce 4.3 (kde se nejprve říká, že všechny sloupce obsahují vlastnosti uzlů, a následně mluví o ostatních sloupcích).
Formální úprava technické zprávy 88 Práce je psána anglicky, a to dle mého názoru velmi zdařile. Také typografie je na velmi pěkné úrovni. Jako nezvyklé a dle mého názoru pro technický text jako ne příliš vhodné vidím to, že v textu jsou opakovaně použity pasáže, které jsou psány formou vyprávění v první osobě jednotného čísla. Další drobnou připomínku mám k umístění popisek pod tabulky.
Práce s literaturou 100 Použité zdroje a práce s nimi jsou zcela přiměřené.
Realizační výstup 95 Vytvořené realizační dílo je dosti komplexní a kombinuje více vrstev napsaných v různých, vhodně zvolených jazycích. Vytvoření dílo je funkční a působí dosti profesionálním dojmem. Vyhodnocení klíčové komponenty spočívající ve vyhledávání rozdílů v grafech volání je velmi pečlivé a přináší zajímavé informace. Vyzdvižení si zaslouží také to, že student v rámci své práce nalezl nedostatky v některých stávajících řešení používaných firmou Oracle v sadě nástrojů spojených s GraalVM a Native Image, z nichž jeden již byl i reálně odstraněn přijetím studentem navrženého řešení.
Využitelnost výsledků Vytvořený nástroj má potenciál pro reálnou využitelnost při ladění analýz vyvíjených pro použití při kompilaci pomocí překladače Native Image, byť by si zasloužil ještě další vylepšení jako např. heuristické rozpoznávání metod, které byly jen přejmenovány (což ale v reálném prostředí není snadný úkol) či pokročilejší funkce umožňující interaktivní zkoumání zobrazených rozdílů v grafech volání (např. zobrazení/zvýraznění dopředného/zpětného okolí zkoumaných metod do zadané hloubky apod.). Reálného využití již navíc došla studentem navržená úprava výpisu grafů volání z překladače Native Image. 
Navrhovaná známka
A
Body
92

eVSKP id 162072