A programming model for semi-implicit parallelization of static analyses
Autor: | Michael Eichberg, Jan Thomas Kölzer, Dominik Helm, Philipp Haller, Mira Mezini, Guido Salvaneschi, Florian Kübler |
---|---|
Rok vydání: | 2020 |
Předmět: |
Computer science
Concurrency Scheduling (production processes) 020207 software engineering 02 engineering and technology Parallel computing Solver Static analysis computer.software_genre Software framework Scalability 0202 electrical engineering electronic engineering information engineering Programming paradigm Reactive programming 020201 artificial intelligence & image processing computer |
Zdroj: | ISSTA |
Popis: | 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. |
Databáze: | OpenAIRE |
Externí odkaz: |