kirancodes.me
To Proof Maintenance & Beyond!

BigDataflow: A Distributed Interprocedural Dataflow Analysis Framework

Zewen Sun, Duanchen Xu, Yiyu Zhang, Yun Qi, Yueyang Wang, Zhiqiang Zuo, Zhaokang Wang, Yue Li, Xuandong Li, Qingda Lu, Wenwen Peng, Shengjian Guo

Abstract

Abstract: Apart from forming the backbone of compiler optimization, static dataflow analysis has been widely applied in a vast variety of applications, such as bug detection, privacy analysis, program comprehension, etc. Despite its importance, performing interprocedural dataflow analysis on large-scale programs is well known to be challenging.In this paper, we propose a novel distributed analysis framework supporting the general interprocedural dataflow analysis.Inspired by large-scale graph processing, we devise a dedicated distributed worklist algorithm tailored for interprocedural dataflow analysis. We implement the algorithm and develop a distributed framework called BigDataflow running on a large-scale cluster.The experimental results validate the promising performance of BigDataflow – it can finish analyzing the program of millions lines of code in minutes. Compared with the state-of-the-art, BigDataflow achieves much more analysis efficiency.

BibTeX
@inproceedings{Sun-al:FSE23,
  author    = {Zewen Sun and
               Duanchen Xu and
               Yiyu Zhang and
               Yun Qi and
               Yueyang Wang and
               Zhiqiang Zuo and
               Zhaokang Wang and
               Yue Li and
               Xuandong Li and
               Qingda Lu and
               Wenwen Peng and
               Shengjian Guo},
  title     = {{BigDataflow:} A Distributed Interprocedural Dataflow Analysis Framework},
  booktitle = {{ESEC/SIGSOFT} {FSE}},
  pages     = {1431--1443},
  publisher = {{ACM}},
  year      = {2023},
}

Related papers