Graspan

Abstract

There is more than a decade-long history of using static analysis to find bugs in systems such as Linux. Most of the existing static analyses developed for these systems are simple checkers that find bugs based on pattern matching. Despite the presence of many sophisticated interprocedural analyses, few of them have been employed to improve checkers for systems code due to their complex implementations and poor scalability. In this paper, we revisit the scalability problem of interprocedural static analysis from a "Big Data" perspective. That is, we turn sophisticated code analysis into Big Data analytics and leverage novel data processing techniques to solve this traditional programming language problem. We develop Graspan, a disk-based parallel graph system that uses an edge-pair centric computation model to compute dynamic transitive closures on very large program graphs.

Document Details

Document Type
Pub Defense Publication
Publication Date
Apr 04, 2017
Source ID
10.1145/3093336.3037744

Entities

People

  • Aftab Hussain
  • Ardalan Amiri Sani
  • Guoqing Xu
  • Kai Wang
  • Zhiqiang Zuo

Organizations

  • Division of Computer and Network Systems
  • Division of Computing and Communication Foundations
  • Office of Naval Research
  • University of California

Tags

Fields of Study

  • Computer science

Readers

  • Distributed Systems and Data Platform Development
  • Operations Research
  • Parallel and Distributed Computing.