Aftab Hussain
University of Houston

Graspan - A Big Data System for analyzing Large-scale Systems Code

Kai Wang, Aftab Hussain, Zhiqiang Zuo, Harry Xu, Ardalan Amiri Sani, John Thorpe, Sung-Soo Son, Khanh Ngyuen
Programming Languages and Systems Group
Department of Computer Science
University of California, Irvine

account_balance Supported by National Science Foundation, ACM
event Accepted at The 22nd ACM International Conference on Architectural Support for Programming Languages and Operating Systems (ASPLOS 2017) Xi'an, China

construction Skills used: Java, big graph processing, scheduling

arrow_backReturn to Projects

drawing

We built a disk-based parallel graph system, Graspan, that uses a novel edge-pair centric computation model to compute dynamic transitive closures on very large program graphs. We implement context-sensitive pointer/alias and dataflow analyses on Graspan. An evaluation of these analyses on large codebases such as Linux shows that their Graspan implementations scale to millions of lines of code and are much simpler than their original implementations.

These analyses were used to augment the existing checkers; these augmented checkers found 132 new NULL pointer bugs and 1308 unnecessary NULL tests in Linux 4.4.0-rc5, PostgreSQL 8.3.9, and Apache httpd 2.2.18.

Slide from AftabHussain@slideshare

article Paper - ASPLOS 2017
article Paper - Preprint 2017
filter_frames Poster - PLDI SRC 2016, ASPLOS 2017
co_present Tutorial Slides - ASPLOS 2017
code_blocks Source code - Github