A programming model for semi-implicit parallelization of static analyses
Dominik Helm, Florian Kübler, Jan Thomas Kölzer, Philipp Haller, Michael Eichberg, Guido Salvaneschi, Mira Mezini
Abstract
Parallelization of static analyses is necessary to scale to real-world programs, but it is a complex and difficult task and, therefore, often only done manually for selected high-profile analyses. In this paper, we propose a programming model for semi-implicit parallelization of static analyses which is inspired by reactive programming. Reusing the domain-expert knowledge on how to parallelize anal- yses encoded in the programming framework, developers do not need to think about parallelization and concurrency issues on their own. The programming model supports stateful computations, only requires monotonic computations over lattices, and is independent of specific analyses. Our evaluation shows the applicability of the programming model to different analyses and the importance of user-selected scheduling strategies. We implemented an IFDS solver that was able to outperform a state-of-the-art, specialized parallel IFDS solver both in absolute performance and scalability.
Ask about this paper
Your agent reads all of it.
Lune indexed this paper to the last equation, along with the top-tier papers that cite it. Ask a question and the answer quotes them.
Your agent calls
Luneget_paper_fulltext
Free to start. No credit card required.
Terminal
Install the CLIlune papers fulltext 79878f93-b83e-40de-bf24-9739cd526bf0Cited by top-tier papers2
- Modular collaborative program analysis in OPALDominik Helm, Florian Kübler, Michael Reif, Michael Eichberg et al.FSE 2020 · 35 citations
- DStream: A Streaming-Based Highly Parallel IFDS FrameworkXizao Wang, Zhiqiang Zuo, Lei Bu, Jianhua ZhaoICSE 2023 · 5 citations
Related papers
- Demanded abstract interpretationBenno Stein, Bor-Yuh Evan Chang, Manu SridharanPLDI 2021 · 19 citations
- IncIDFA: An Efficient and Generic Algorithm for Incremental Iterative Dataflow AnalysisAman Nougrahiya, V. Krishna NandivadaOOPSLA 2025 · 4 citations
- Visibility Algorithms for Dynamic Dependence Analysis and Distributed CoherenceMichael Bauer, Elliott Slaughter, Sean Treichler, Wonchan Lee et al.PPoPP 2023 · 6 citations
- Deterministic parallel fixpoint computationSung Kook Kim, Arnaud J. Venet, Aditya V. ThakurPOPL 2020 · 9 citations
- Synthesizing fine-grained synchronization protocols for implicit monitorsKostas Ferles, Benjamin Sepanski, Rahul Krishnan, James Bornholt et al.OOPSLA 2022 · 2 citations
