Detail práce

Performance Analysis Based on Noise Injection

Diplomová práce Student: Liščinský Matúš Akademický rok: 2020/2021 Vedoucí: Fiedor Tomáš, Ing., Ph.D.
Název česky
Výkonnostní analýza programů založená na vkládání šumu
Jazyk práce
anglický
Abstrakt

Táto práca predstavuje nástroj Perun-Blower, využívajúci perfblowing techniku: vkladanie šumu do funkcií testovaného programu a nasledovné vyhodnotenie vplyvu šumu na výkon programu na základe zozbieraných časových údajov týchto funkcií z behu programu. Implementácia je postavená na dynamickej binárnej inštrumentácii nástroja Pin. Zameriavame sa na hľadanie funkcií, ktoré majú vysoký vplyv na výkon a rovnako tak aj odhad potenciálneho zrýchlenia behu vlákna pri optimalizácii konkrétnej funkcie. Naviac sme rozšírili existujúci Trace collector používaný v nástroji Perun na zbieranie časových dát funkcií, o nový tzv. engine, ktorý je založený práve na nástroji Pin. Funkčnosť implementácie sme otestovali na dvoch netriviálnych projektoch, kde sme dokázali nájsť funkcie (1) so značným vplyvom na výkon, (2) s najvýznamnejším optimalizačným prínosom a (3) funkcie, ktorých degradácia spôsobí, že vykonávanie programu sa neskončí ani po niekoľkých hodinách. 

Klíčová slova

kauzálne profilovanie, výkonnostné testovanie, virtuálna amplifikácia, vkladanie šumu, výkonnostne úzke miesta, optimalizácia

Ústav
Studijní program
Informační technologie a umělá inteligence, specializace Verifikace a testování software
Soubory
Stav
obhájeno, hodnocení B
Obhajoba
24. června 2021
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 B.

Otázky u obhajoby
  1. I did not understand the intuition behind the selection of the next candidate function in the perfblowing loop. Could you please explain this in more detail (perhaps using an example)?
  2. How did you determine the configurations for the experiments? Was it empirical or did you perform some measurements?
  3. How do you propose optimizing conditional wait?
  4. What time domain did you use? Define performance in context of your work?
  5. Did you try to contact the authors of the thirdparty benchmarked code?
  6. One of your benchmark got stuck after injecting sufficient amount of noise. What do you think was the reason for this behavior?
Komise
Vojnar Tomáš, prof. Ing., Ph.D. (UITS FIT VUT), předseda
Češka Milan, doc. RNDr., Ph.D. (UITS FIT VUT), člen
Drábek Vladimír, doc. Ing., CSc. (UPSY FIT VUT), člen
Peringer Petr, Dr. Ing. (UITS FIT VUT), člen
Rogalewicz Adam, doc. Mgr., Ph.D. (UITS FIT VUT), člen
Smrčka Aleš, Ing., Ph.D. (UITS FIT VUT), člen
Citace
LIŠČINSKÝ, Matúš. Performance Analysis Based on Noise Injection. Brno, 2021. Diplomová práce. Vysoké učení technické v Brně, Fakulta informačních technologií. 2021-06-24. Vedoucí práce Fiedor Tomáš. Dostupné z: https://www.fit.vut.cz/study/thesis/24144/
BibTeX
@mastersthesis{FITMT24144,
    author = "Mat\'{u}\v{s} Li\v{s}\v{c}insk\'{y}",
    type = "Diplomov\'{a} pr\'{a}ce",
    title = "Performance Analysis Based on Noise Injection",
    school = "Vysok\'{e} u\v{c}en\'{i} technick\'{e} v Brn\v{e}, Fakulta informa\v{c}n\'{i}ch technologi\'{i}",
    year = 2021,
    location = "Brno, CZ",
    language = "english",
    url = "https://www.fit.vut.cz/study/thesis/24144/"
}
Nahoru