Rozšíření nástroje ANaConDa pro dynamickou analýzu paralelních programů

Loading...
Thumbnail Image
Date
ORCID
Mark
D
Journal Title
Journal ISSN
Volume Title
Publisher
Vysoké učení technické v Brně. Fakulta informačních technologií
Abstract
Cieľom tejto práce bolo implementácia algoritmu FastTrack pre dynamickú analízu viac-vláknových programov v jazyku C/C++. Ide o algoritmus detekujúci chyby typu data race. Je založený na relácii happens-before zakódovanej do tzv. vektor-klokov. Tie umožňujú extrapolovať beh programu a odhaľovať tak potenciálne chyby, ktoré sa v aktuálnom behu nevyskytli, ale v iných exekúciách by sa mohli vyskytnúť. Algoritmus je implementovaný v prostredí ANaConDA. Jedná sa o nástroj slúžiaci pre jednoduchšie implementovanie dynamických analizátorov monitorujúcich paralelné programy na binárnej úrovni. ANaConDA poskytuje analyzátorom potrebné informácie o behu programu, ktoré detektory následne využívaju k odhaľovaniu chýb.
The main goal of this thesis is to implement algorithm FastTrack for dynamic analysis of multi-threaded programs in C/C++. FastTrack is algorithm which detects data race errors. It is based on happens-before relation encoded into the vector-clocks. Vector-clocks allows extrapolation of the execution which improves detection of potential errors, which were not seen in the actual run of the program however in other executions they could cause problems. Algorithm is implemented into the framework ANaConDA. ANaConDA is a tool for implementation of dynamic analyzers of parallel programs on binary level. It provides neccessary run time program informations for detectors use to discover concurency errors.
Description
Citation
HORŇÁK, M. Rozšíření nástroje ANaConDa pro dynamickou analýzu paralelních programů [online]. Brno: Vysoké učení technické v Brně. Fakulta informačních technologií. 2017.
Document type
Document version
Date of access to the full text
Language of document
cs
Study field
Informační technologie
Comittee
doc. Ing. Jaroslav Zendulka, CSc. (předseda) doc. Dr. Ing. Otto Fučík (místopředseda) Ing. František Grézl, Ph.D. (člen) Ing. Petr Matoušek, Ph.D., M.A. (člen) Ing. Aleš Smrčka, Ph.D. (člen)
Date of acceptance
2017-06-12
Defence
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. Oponent hodnotil práci stupněm 4F, protože realizační výstup (analyzátor Fast Track) je nedokončený, a tím potažmo nepoužitelný. Student nedokázal vyvrátit výtky oponenta. Komise shledala nedostatky práce natolik závažné, že se práci rozhodla hodnotit jako nevyhovující " F ". Otázky u obhajoby: V sekci 6.1 na straně 24 uvádíte, že paměťová náročnost pro uložení vektorů hodin je nejhůře lineární. To však platí pro uložení jednoho vektoru hodin, přičemž pro detekci je potřeba vektor hodin pro každé vlákno, pro každý zámek a dva vektory pro každou sdílenou proměnnou. Neměla by tedy paměťová složitost být kvadratická, když už zanedbáme prostor pro zámky a proměnné? Když se při detekci místo vektoru hodin používá epocha, má použitá datová struktura pro vektor všechny položky kromě první nulové (sekce 7.2.1). Nebylo by vhodnější použít takovou datovou strukturu, která by tyto zbytečné položky vůbec neměla?
Result of defence
práce nebyla úspěšně obhájena
Document licence
Standardní licenční smlouva - přístup k plnému textu bez omezení
DOI
Collections
Citace PRO