Detail práce

Efficient Techniques for Program Performance Analysis

Diplomová práce Student: Pavela Jiří Akademický rok: 2019/2020 Vedoucí: Rogalewicz Adam, doc. Mgr., Ph.D.
Název česky
Efektivní techniky pro měření výkonu programů
Jazyk práce
anglický
Abstrakt

Tato práce představuje optimalizační techniky zaměřené na proces sběru výkonnostních dat v rámci výkonnostní analýzy a profilování programů v nástroji Perun.   Rozšíření architektury a implementace těchto nových optimalizačních technik v nástroji Perun (a převážně pak v jeho modulu Tracer) zlepšuje jeho škálovatelnost a umožňuje tak provádět výkonnostní analýzu i nad rozsáhlými projekty.   Zaměřujeme se především na zvýšení přesnosti sběru dat, redukci množství instrumentovaných bodů programu, omezení časové režie procesu sběru dat a výkonnostního profilování, snížení objemu sbíraných dat a velikosti výsledného výkonnostního profilu.  Optimalizace je dosažena pomocí aplikace statistických metod, množství technik statické a dynamické analýzy (případně jejich kombinací) a využitím pokročilých možností a schopností nástrojů SystemTap a eBPF.  Na základě vyhodnocení provedeného na dvou vybraných projektech a množství experimentů můžeme konstatovat, že se nám úspěšně podařilo dosáhnout značné optimalizace u téměř všech sledovaných metrik a kritérií.

Klíčová slova

optimalizační techniky, výkonnostní analýza, dynamická analýza, statická analýza, dynamická instrumentace, kontinuální integrace, SystemTap, eBPF

Ústav
Studijní program
Informační technologie, obor Bezpečnost informačních technologií
Soubory
Stav
obhájeno, hodnocení A
Obhajoba
16. července 2020
Oponent
Průběh obhajoby

Student nejprve prezentoval výsledky, kterých dosáhl v rámci své práce. Komise se poté seznámila s hodnocením vedoucího a posudkem oponenta práce. Student následně odpověděl na otázky oponenta a na další otázky přítomných. Komise se na základě posudku oponenta, hodnocení vedoucího, přednesené prezentace a odpovědí studenta na položené otázky rozhodla práci hodnotit stupněm A.

Otázky u obhajoby
  1. Tracer, nástroj pro sběr výkonnostní dat, je závislý na technologiích SystemTap a eBNF, jenž jsou k dispozici pouze pro operační systém Linux. Jak reálné by bylo přidání podpory sběru výkonnostních dat pro operační systém Windows? Existují technologie, jenž by šly použít pro tento účel v systému Windows?
  2. Řada optimalizačních technik má jako vstup CGR, neboli CG (call graph) + CFG (control flow graph), a produkuje modifikovaný CGR. Dostává každá technika originální CGR? Pokud ano, jak se poté řeší sloučení modifikovaných CGR? Pokud ne, a každá technika tedy dostává na vstup modifikovaný CGR, jenž je výstupem techniky aplikované před ní, jak ovlivňuje pořadí řetězení optimalizací celkový výsledek?
  3. Je možné Vaše řešení použít pro měření performance degradation v kernelu?
Komise
Drahanský Martin, prof. Ing., Dipl.-Ing., Ph.D. (UITS FIT VUT), předseda
Čadík Martin, doc. Ing., Ph.D. (UPGM FIT VUT), člen
Lengál Ondřej, Ing., Ph.D. (UITS FIT VUT), člen
Malinka Kamil, Mgr., Ph.D. (UITS FIT VUT), člen
Polčák Libor, Ing., Ph.D. (UIFS FIT VUT), člen
Veselý Vladimír, Ing., Ph.D. (UIFS FIT VUT), člen
Citace
PAVELA, Jiří. Efficient Techniques for Program Performance Analysis. Brno, 2020. Diplomová práce. Vysoké učení technické v Brně, Fakulta informačních technologií. 2020-07-16. Vedoucí práce Rogalewicz Adam. Dostupné z: https://www.fit.vut.cz/study/thesis/19092/
BibTeX
@mastersthesis{FITMT19092,
    author = "Ji\v{r}\'{i} Pavela",
    type = "Diplomov\'{a} pr\'{a}ce",
    title = "Efficient Techniques for Program Performance Analysis",
    school = "Vysok\'{e} u\v{c}en\'{i} technick\'{e} v Brn\v{e}, Fakulta informa\v{c}n\'{i}ch technologi\'{i}",
    year = 2020,
    location = "Brno, CZ",
    language = "english",
    url = "https://www.fit.vut.cz/study/thesis/19092/"
}
Nahoru