Vylepšení zásuvných modulů prostředí Meta Infer pro detekci chyb v paralelních programech
Loading...
Date
Authors
Marek, Daniel
Advisor
Referee
Mark
B
Journal Title
Journal ISSN
Volume Title
Publisher
Vysoké učení technické v Brně. Fakulta informačních technologií
ORCID
Abstract
Tato práce se zaměřuje na vylepšení zásuvných modulů Meta Infer pro detekci chyb paralelnosti se zvláštním důrazem na vylepšení zásuvného modulu Atomer. Navrhujeme několik rozšíření pro zvýšení jeho použitelnosti a přesnosti, včetně filtrování porušení atomicity na~základě tvrdých a relativních limitů, podpory sledování přístupu do paměti a integrace s dynamickou analýzou. Nejvlivnějším přínosem je mechanismus filtrování, který výrazně snižuje šum ve výstupu a pomáhá vývojářům zaměřit se na nejdůležitější problémy. Naše~implementace byla vyhodnocena na umělých i reálných příkladech a ukázala pozoruhodné zlepšení kvality výsledků analýzy. Díky těmto vylepšením je Atomer praktičtější a atraktivnější pro vývojáře analyzující paralelní software.
This thesis focuses on improving Meta Infer plugins for detecting concurrency errors, with~a~particular emphasis on enhancing the Atomer plugin. We propose several extensions to~increase its usability and precision, including filtering atomicity violations based on hard and relative thresholds, supporting memory access tracking, and integrating with dynamic analysis. The most impactful contribution is the filtering mechanism, which significantly reduces noise in the output and helps developers focus on the most relevant issues. Our implementation was evaluated on both hand-made and real-world codebases, showing notable improvements in the quality of the analysis results. These enhancements make Atomer more practical and appealing for developers analyzing concurrent software.
This thesis focuses on improving Meta Infer plugins for detecting concurrency errors, with~a~particular emphasis on enhancing the Atomer plugin. We propose several extensions to~increase its usability and precision, including filtering atomicity violations based on hard and relative thresholds, supporting memory access tracking, and integrating with dynamic analysis. The most impactful contribution is the filtering mechanism, which significantly reduces noise in the output and helps developers focus on the most relevant issues. Our implementation was evaluated on both hand-made and real-world codebases, showing notable improvements in the quality of the analysis results. These enhancements make Atomer more practical and appealing for developers analyzing concurrent software.
Description
Keywords
Statická analýza , Porušení atomicity , Chyby souběhu , Infer Framework , Atomer , Abstraktní interpretace , Analýza souběhu , Verifikace softwaru , Závodní podmínky , Nástroje pro analýzu programů , OCaml , Analýza C/C++ , Filtrování chyb , Static Analysis , Atomicity Violations , Concurrency Bugs , Infer Framework , Atomer , Abstract Interpretation , Concurrency Analysis , Software Verification , Race Conditions , Program Analysis Tools , OCaml , C/C++ Analysis , Bug Filtering
Citation
MAREK, D. Vylepšení zásuvných modulů prostředí Meta Infer pro detekci chyb v paralelních programech [online]. Brno: Vysoké učení technické v Brně. Fakulta informačních technologií. 2025.
Document type
Document version
Date of access to the full text
Language of document
en
Study field
Verifikace a testování software
Comittee
doc. Mgr. Adam Rogalewicz, Ph.D. (předseda)
doc. RNDr. Pavel Smrž, Ph.D. (člen)
doc. Ing. František Zbořil, CSc. (člen)
Dr. Ing. Petr Peringer (člen)
Ing. Aleš Smrčka, Ph.D. (člen)
Ing. Ondřej Lengál, Ph.D. (člen)
Date of acceptance
2025-06-26
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. 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.
Result of defence
práce byla úspěšně obhájena
