CCA: Code Continuity Analysis Framework

The framework is currently composed of the following:

  • parsers for Python, Java, Verilog, Fortran, and C/C++,
  • an AST differencing tool, Diff/AST, based on the parsers,
  • helper scripts for factbase manipulation, and
  • ontologies for the related entities.

For further details, visit GitHub.

Automated Patch Extraction via Syntax- and Semantics-Aware Delta Debugging on Source Code Changes (ESEC/FSE2018)

Delta debugging (DD) is an approach to automating the debugging activities based on systematic testing. DD algorithms find the cause of a regression of a program by minimizing the changes applied between a working version and a faulty version of the program. However, it is still an open problem to minimize a huge set of changes while avoiding any invalid subsets that do not result in testable programs, especially in case that no software configuration management system is available. Continue reading

An Empirical Study of Computation-Intensive Loops for Identifying and Classifying Loop Kernels (ICPE2017)

The process of performance tuning is time consuming and costly even if it is carried out automatically. It is crucial to learn from the experience of experts. Our long-term goal is to construct a database of facts extracted from specific performance tuning histories of computation-intensive applications such that we can search the database for promising optimization patterns that fit a given kernel. Continue reading