Panda: A Concurrent Scheduler for Compiler-Based Tools
The widely-used Compiler-Based Tools (CBT), such as static analyzers, process input source code using data structures inside a compiler. CBTs can be invoked together with compilers by injecting the compilation process. However, it is seldom the best practice for the inconvenience of running various CBTs, the unexpected failures due to interference with compilers, and the efficiency degradation under compilation dependencies. To fill this gap, we propose Panda, an efficient scheduler for C/C++ CBTs. It executes various CBTs in a compilation-independent manner to avoid mutual interference with the build system, and parallels the process based on an estimated makespan to improve the execution efficiency. The assessment indicates that Panda can reduce the total execution time by 19%–47% compared with compilation-coupled execution, with an average 39.03$\times$–52.15$\times$ speedup with 64 parallel workers.
Wed 18 SepDisplayed time zone: Amsterdam, Berlin, Bern, Rome, Stockholm, Vienna change
13:30 - 15:00 | Tool Demos 1ISSTA/ECOOP Tool Demonstrations at EI 5 Hochenegg Chair(s): Rohan Padhye Carnegie Mellon University | ||
13:30 12mTalk | Generalized Concurrency Testing Tool for Distributed Systems ISSTA/ECOOP Tool Demonstrations Ege Berkay Gulcan Delft University of Technology, João Neto Delft University of Technology, Burcu Kulahcioglu Ozkan Delft University of Technology DOI Media Attached | ||
13:42 12mTalk | Testing concurrent algorithms on JVM with Lincheck and IntelliJ IDEADistinguished Tool Demo Award ISSTA/ECOOP Tool Demonstrations Alexander Potapov JetBrains, Maksim Zuev JetBrains, Evgenii Moiseenko JetBrains Research, Nikita Koval JetBrains | ||
13:55 12mTalk | JCWIT: A Correctness-Witness Validator for Java Programs based on Bounded Model Checking ISSTA/ECOOP Tool Demonstrations Zaiyu Cheng University of Manchester, Tong Wu University of Manchester, Peter Schrammel University of Sussex and Diffblue Ltd, Norbert Tihanyi Eotvos Lorand University, Eddie B. de Lima Filho TPV Technology, Lucas C. Cordeiro University of Manchester, UK and Federal University of Amazonas, Brazil | ||
14:08 12mTalk | ESBMC-Python: A Bounded Model Checker for Python Programs ISSTA/ECOOP Tool Demonstrations Bruno Farias University of Manchester, Rafael Menezes University of Manchester, Eddie B. de Lima Filho TPV Technology, Youcheng Sun University of Manchester, Lucas C. Cordeiro University of Manchester, UK and Federal University of Amazonas, Brazil Media Attached | ||
14:21 12mTalk | Panda: A Concurrent Scheduler for Compiler-Based Tools ISSTA/ECOOP Tool Demonstrations Xutong Ma Institute of Software, Chinese Academy of Sciences, Beijing, China, Jiwei Yan Institute of Software at Chinese Academy of Sciences, Jun Yan Institute of Software, Chinese Academy of Sciences, Jian Zhang Institute of Software at Chinese Academy of Sciences; University of Chinese Academy of Sciences DOI Pre-print Media Attached | ||
14:34 12mTalk | SeeWasm: An Efficient and Fully-Functional Symbolic Execution Engine for WebAssembly Binaries ISSTA/ECOOP Tool Demonstrations Ningyu He Peking University, Zhehao Zhao Peking University, Hanqin Guan Peking University, Jikai Wang Huazhong University of Science and Technology, Shreya Mathews IMC University of Applied Sciences Krems, Ding Li Peking University, Haoyu Wang Huazhong University of Science and Technology, Xiangqun Chen Peking University, Yao Guo Peking University | ||
14:47 12mTalk | PolyTracker: Whole-Input Dynamic Information Flow TracingDistinguished Tool Demo Award ISSTA/ECOOP Tool Demonstrations Evan Sultanik Trail of Bits, Marek Surovič Trail of Bits, Henrik Brodin Trail of Bits, Kelly Kaoudis Trail of Bits, Facundo Tuesca Trail of Bits, Carson Harmon Trail of Bits, Lisa Overall Trail of Bits, Joseph Sweeney Trail of Bits, Bradford Larsen Trail of Bits |