Deterministic Parallel Fixpoint Computation
Abstract interpretation is a general framework for expressing static program analyses. It reduces the problem of extracting properties of a program to computing a fixpoint of a system of equations. The de facto approach for computing this fixpoint uses a sequential algorithm based on weak topological order (WTO). This paper presents a deterministic parallel algorithm for fixpoint computation by introducing the notion of weak partial order (WPO). We present an algorithm for constructing a WPO in almost-linear time. Finally, we describe our deterministic parallel abstract interpreter PIKOS. We evaluate the performance of PIKOS on a suite of 207 C programs. We observe a maximum speedup of 9.38x when using 16 cores compared to the existing WTO-based sequential abstract interpreter.
READ FULL TEXT