Scalable Static Analysis of Parallel Programs with Tens of Millions of Lines of Code

Scalable static analysis of parallel programs is crucial in ensuring the correctness, safety, and performance of large-scale software applications. As software projects grow in size and complexity, analyzing them becomes more challenging. Analyzing parallel programs, which can run concurrently on many cores and distributed machines, poses additional challenges due to the intricacies of synchronization, data races, and deadlocks. In this talk, I will present a static analysis tool developed by my research team at Texas A&M and a startup company, Coderrect Inc, over the last five years based on the LLVM toolchain. The tool has been used to analyze over tens of millions lines of source code in languages such as C/C++, Fortran, Rust, Smalltalk, and Solidity, and has identified hundreds of previously undetected concurrency issues in popular open source and proprietary projects. I will focus on a few precision-preserving techniques to scale the core compiler analyses, including an abstraction of origins, pointer analysis solvers, OpenMP logical threading, and an IR for dynamic languages and smart contracts. Some of these ideas have been published in recent PL/SE and security conferences, including two ACM SIGSOFT distinguished paper awards.

Dr. Jeff Huang is an Associate Professor at Texas A&M University, where he directs the O2 Lab. He is also a co-founder of Coderrect Inc, a startup in software correctness/security, and was a Visiting Associate Professor at Stanford University. His research interests span a broad range of topics related to program analysis, verification, AI and cybersecurity. His research impacts have been recognized by numerous awards, including NSF CAREER award, DARPA Young Faculty award, ACM SIGSOFT Early Career Researcher award, ACM SIGSOFT Outstanding Dissertation award, multiple Google Faculty Research awards, Mozilla Research award, and Facebook Faculty award. More information can be found at