More about HKUST
Continuous Reasoning of Large Complex Software via Incremental Analysis
Speaker: Bozhen LIU Texas A&M University Title: "Continuous Reasoning of Large Complex Software via Incremental Analysis" Date: Tuesday, 8 March 2022 Time: 10:00am - 11:00am (HKT) Zoom link: https://hkust.zoom.us/j/928308079?pwd=MW9wTCtlSDd2MnViZGdNd2oreUpXZz09 Meeting ID: 928 308 079 Passcode: 20212022 Abstract: Continuous Integration (CI) is commonly used in modern software development, which automatically runs many customized tests to check the code quality. However, the tests, which may run overnight, cannot guarantee to reveal all serious bugs (e.g., concurrency bugs) in a program. Because detecting such bugs requires expensive program analyses which are hard to achieve efficient, precise and scalable at the same time. This prevents CI tests from leveraging powerful techniques for error detection. This talk will present my recent works on bridging the efficiency and precision trade-off for expensive program analysis techniques via incremental analysis. Our approaches are inspired by the fact that software is often hosted by version control tools (e.g., GitHub) where small but frequent code changes are made for each commit. Instead of exhaustively re-analyzing the whole program for the tests, we can analyze the change only and recompute the impact of the change for program analysis by leveraging the intermediate analysis results. Firstly, I will discuss our several incremental algorithms for pointer analysis and static concurrency bug detection, which are fast and scalable with precision and soundness. Secondly, motivated by the overwhelming false positives from static analysis, I will discuss our context "origin", which integrates the concepts of thread and event to provide precise points-to results for multithreaded and event-driven programs. Origins are demonstrated to be efficient and scalable for large, real-world programs (e.g., Linux kernel, Hadoop, Firefox Focus) and be practical by detecting new races from those programs. All the discussed techniques are originated from expensive whole program analyses, and designed for continuous reasoning to be adopted by CI, which act as references for other techniques of formal reasoning. ******************* Biography: Bozhen Liu is a Ph.D. candidate advised by Dr. Jeff Huang in the Department of Computer Science and Engineering at Texas A&M University. She received her Bachelor's in Vehicle Engineering from Beijing Institute of Technology in 2011, her Master's in Mechanical Engineering from Cornell University in 2013, and her second Master's in Computer Science in 2019. Her research interests are in continuous integration, incremental analysis, software engineering, parallel, concurrent and distributed systems. Her works aim to make expensive static program analysis techniques more efficient and scalable without losing precision. Her research has been published in top-tier ACM conferences and journal.